`
bupter520
  • 浏览: 55689 次
  • 性别: Icon_minigender_2
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

基于Maven的Flex/Webapp项目示例

阅读更多

这是一个配置为多模块maven项目的Flex3/J2EE项目示例。你可以以这种结构为基础来构建自己的项目。Flex项目应当看作是Web应用项目(WAR)的依赖项。使用Maven Dependency插件,SWF构件就会被自动复制到web应用项目的根目录中。

此示例项目包括三个模块:

  • flex-gui :SWF构件,
  • java-service : Java facade 示例,
  • web-app : Web应用程序,同时依赖于flex-uijava-services构件.

flex-gui 项目

“flex-gui”项目是一个典型的包含.as.mxml源文件的Flex项目。这个模块产生SWF构件(组装:SWF)。

java-service 项目

“java-service”项目是一个包含java facade的标准java项目,该java façadeGUI提供原始数据源。这个模块产生JAR构件(组装:JAR)。

web-app 项目

“web-app”项目是包含配置文件的Web应用程序项目,这些配置文件需部署到Tomcat等应用服务器容器中。其他资源如JSP, Servlet,图片等也需要包括进来。这个模块产生WAR构件(组装:WAR)。

在你自己的项目中也可以添加其他模块进来,进一步增强业务层或持久层。

必要条件

创建这个项目需要 :

  • Maven 2.0.x,
  • 最新版的BlazeDS-Turnkey或者Tomcat 实例.

依赖项

  • 示例基于Maven Flex Plugin 2.1.1. 更多信息请参见项目主页.
  • Flex SDK版本3.2.0.3958.
  • FlexBuilder 3.0.2.xxx集成开发环境,或其它文本编辑器.

多模块项目布局

    ...

    +sampleProject

      -pom.xml ( the parent pom )

      +flex-gui

        -pom.xml

        +src

          +main

            +flex

              + org.servebox.sample ( All as/mxml sources here )

          +resources

          +test

            +flex

              + org.servebox.test.sample ( All classes for unit test here )

      +java-service

        -pom.xml

        +src

          +main

            +java

              + org.servebox.sample ( All java sources here )

          +test

            +java

              + org.servebox.test.sample ( All classes for unit tests here )

      +web-app

        -pom.xml

        +src

          +main

            +resources

              - additional resources for webapp ( such as images, video etc... )

            +webapp

              +WEB-INF

                +flex

                  -services-config.xml

                -web.xml

POM概述

父类POM

Main部分

父类pom使用这个pom组装(这是“aggregator project”) :

    <modelVersion>4.0.0</modelVersion>

    <groupId>org.servebox.sample.multi-module-app</groupId>

    <artifactId>multi-module-sample</artifactId>

    <version>1.0-SNAPSHOT</version>

    <packaging>pom</packaging>

    <name>Flex3-J2EE-MultiModules-Sample-Application</name>

Modules部分

模块部分定义以下三个子模块:

    <modules>

        <module>flex-gui</module>

        <module>java-service</module>

        <module>web-app</module>

    </modules>

插件存储库和存储库

以下插件存储库直接定义了Maven Flex 插件的位置:

    <pluginRepositories>

        <pluginRepository>

            <id>servebox</id>

            <name>ServeBox Plugin Repository</name>

            <url>http://maven.servebox.org/repository</url>

        </pluginRepository>

    </pluginRepositories>

以下存储库定义了Flex SDKActionScript Foundry依赖项的位置:

    <repositories>

        <repository>

            <id>servebox</id>

            <name>ServeBox Plugin Repository</name>

            <url>http://maven.servebox.org/repository</url>

        </repository>

    </repositories>

Build部分

将项目导入到Eclipse/FlexBuilder工作空间

通过Maven Eclipse插件和Maven Flex插件, Maven可以针对FlexJava特性自动生成eclipse项目属性文件。下载实例项目,加压到你的工作空间目录,为这个多模块项目另外创建一个工作空间目录,然后在该多模块项目的根目录下运行以下命令行代码:

mvn flex:eclipse eclipse:eclipse

在导入“现有项目”到工作空间后,你需要定义M2_REPO变量便于FlexJava使用,参看以下两个截图:

构建项目

首先, 你得在根项目的pom.xml中定义相关属性:

    <properties>

        <tomcat.managerurl>http://localhost:8400/manager</tomcat.managerurl>

        <tomcat.serverprofile></tomcat.serverprofile>

        <webapp.name>sample-multi-project</webapp.name>

        <tomcat.server.root>D:\dev\blazeds-turnkey-3.2.0.3978\tomcat\webapps\${webapp.name}</tomcat.server.root>

        <tomcat.server.user>tomcat</tomcat.server.user>

        <tomcat.server.password>tomcat</tomcat.server.password>

    </properties>

上述配置可以根据自己的实际环境加以更改。

这个项目可能使用单个命令就可以构建。使用命令行工具,从根目录运行“mvn clean install”:包含在reactor中的所有项目将会被构建,并安装在你本地Maven存储库中 (默认情况下: ~/.m2/repository).

如果你想要这个应用程序自动部署到tomcat中,使用 “tomcatexploded”,并确保:

  • Tomcat实例处于运行中,
  • 配置文件${tomcat.root]/conf/tomcat-users.xml包含“tomcat”用户 (这个对象用户Mavean管理Tomcat实例) :

<?xml version='1.0' encoding='utf-8'?>

<tomcat-users>

  <role rolename="tomcat"/>

  <role rolename="manager"/>

  <role rolename="admin"/>

  <user username="tomcat" password="tomcat" roles="tomcat,admin,manager"/>

  <user username="admin" password="" roles="admin,manager"/>

</tomcat-users>

下载源代码

使用以下路径下载本文使用的源代码文件: multi-module-sample-10-snapshot-source

Tags: flex-gui, java-service, web-app

 

分享到:
评论
2 楼 xiao_feng68 2012-05-19  
我的怎么flex-gui安装出错呢
1 楼 herowj 2011-07-26  
好,不错。。。学习了。正准备使用maven来管理我的项目。

相关推荐

    基于Maven的SmartGWT项目示例

    本示例项目“基于Maven的SmartGWT项目”就是这样的一个实践,它结合了两个强大的技术:Maven作为项目管理和构建工具,以及SmartGWT作为前端UI框架。下面我们将深入探讨这两个技术以及它们如何协同工作。 首先,...

    Maven问题:Downloading from central: https://repo1.maven.org/maven2/org/apache/maven/plugins/maven-a

    Downloading from central: https://repo1.maven.org/maven2/org/apache/maven/plugins/maven-archetype-plugin/maven-metadata.xml 很奇怪,我的maven仓库配置了私有库,,并且在maven setting.xml中配置了mirror...

    基于maven创建web项目

    基于maven创建web项目 maven是一种基于项目对象模型(Project Object Model,POM)的项目管理工具,由Apache软件基金会开发和维护。maven提供了一种标准化的方式来构建、打包和部署项目,它可以帮助开发者简化项目...

    简单的maven webapp项目

    本项目是一个基于Maven的Web应用程序(Webapp),旨在演示如何使用Maven来构建和管理一个简单的Web应用。 首先,让我们深入了解Maven的核心概念: 1. **项目对象模型(Project Object Model,POM)**:Maven的中心...

    maven-archetype-webapp-1.0.jar下载

    《Maven Archetype Webapp 1.0:构建Java Web项目的基石》 Maven Archetype Webapp 1.0.jar 是一个重要的工具,它属于Java开发领域中的Maven生态系统,主要用于快速搭建Java Web应用程序的基础框架。这个压缩包文件...

    swf.rar_flex_maven 编译flex_maven flex pom_maven flex 编译_swf开发

    标题"swf.rar_flex_maven 编译flex_maven flex pom_maven flex 编译_swf开发"明确指出我们将讨论使用Maven来构建SWF(ShockWave Flash)文件的Flex项目。SWF是Adobe Flash Player播放的文件格式,通常用于在网络...

    Eclipse创建基于MAVEN的web项目

    "Eclipse创建基于MAVEN的web项目" 标题解释 本文主要介绍如何使用Eclipse创建基于Maven的Web项目,包括建立Maven项目、配置项目、构建框架等步骤。 描述解释 使用Eclipse创建Maven版的Web项目需要通过Maven的...

    maven 初始化webapp

    当我们谈论“maven初始化webapp”时,我们实际上是指使用Maven来创建一个基础的Web应用程序项目结构,这个结构符合Java EE规范,尤其是对于基于Servlet和JSP的Web应用。 首先,让我们详细了解一下Maven的基本概念。...

    【基于Maven的Hibernate整合Mycat示例】

    总之,【基于Maven的Hibernate整合Mycat示例】是一个涵盖了项目构建、数据库连接、ORM框架使用和分布式数据库中间件配置的综合案例。它帮助开发者理解如何在大型系统中处理高并发、大数据量的情况,以及如何通过...

    Maven 构建多个项目示例代码

    本示例代码"**Maven 构建多个项目示例代码**"旨在展示如何使用Maven来组织和构建多个相互关联的子项目。 1. **Maven项目结构**:在Maven项目中,通常遵循一种标准的目录结构,包括`src/main/java`(源代码)、`src/...

    maven下载/安装/配置

    作为Apache组织的一个颇为成功的开源项目,其主要服务于基于Java平台的项目创建,依赖管理和项目信息管理。maven是Apache的顶级项目,解释为“专家,内行”,它是一个项目管理的工具,maven自身是纯java开发的,可以...

    Maven Web基础搭建示例

    本示例将详细介绍如何使用Maven搭建一个基础的Web项目,并解决创建过程中可能出现的报错问题。 ### 一、Maven环境配置 首先,确保你已经安装了Java Development Kit (JDK),因为Maven是基于Java的。接着,下载Maven...

    maven项目转换WEB项目

    如果你不熟悉Maven,但想要在Eclipse中使用一个基于Maven的Web项目,可以遵循以下步骤: 1. **导入Maven项目到Eclipse**:在Eclipse中选择“File” &gt; “Import” &gt; “Maven” &gt; “Existing Maven Projects”,然后...

    使用Maven构建Spring MVC项目的简单示例

    现在,我们可以在`src/main/java/com/tan/maven/springmvc`包下创建控制器类,如`HelloController.java`,并使用Spring MVC的注解来处理HTTP请求: ```java package com.tan.maven.springmvc; import org.spring...

    基于 maven 的 ssm 项目搭建 项目阶段代码 website_java3

    本资源是《基于 maven 的 ssm 项目搭建》系列文章的阶段代码,截止于《基于 maven 的 ssm 项目搭建六:整合 druid 和 mybatis》,文章原地址:http://blog.csdn.net/xz2001/article/details/73240835

    Java + Maven Tomcat 应用程序示例.zip

    Java + Maven Tomcat 应用程序示例Java-tomcat-maven 示例这是使用 Maven 和 webapp-runner 为 Tomcat 构建的可部署 Java Web 应用程序示例。本地运行(需要安装 maven 和 java)mvn packagejava -jar target/...

    Eclipse+Maven创建webapp项目集成jetty服务器

    2. **Maven**:Apache Maven是一个项目管理和综合工具,基于项目对象模型(Project Object Model,POM)。它可以帮助开发者管理依赖、构建项目、执行测试等,通过配置Maven的POM.xml文件,我们可以方便地管理项目的...

    maven-archetype-webapp-1.0.jar

    `maven-archetype-webapp`是一个特定的Archetype,专为创建基于Servlet和JSP的Web应用而设计。它的版本号`1.0`代表了这个Archetype的早期版本,可能包含了一些基本特性,适合初学者或者对简单Web应用需求的开发者。 ...

    使用Eclipse构建Maven项目 配套示例项目源码

    在本文中,我们将深入探讨如何使用Eclipse IDE创建和管理Maven项目,同时结合"使用Eclipse构建Maven项目.pdf"中的配置示例项目源码,来进一步理解这个过程。Maven是一个强大的Java项目管理和构建工具,而Eclipse是广...

Global site tag (gtag.js) - Google Analytics