2011年8月6日 星期六

Apache Maven 專案管理平台 - WAR 專案建立與執行

1. 初設 AAAWebapp 專案

$ mvn  archetype:create  -DgroupId=kvm.aaa  -DartifactId=AAAWebapp  -DarchetypeArtifactId=maven-archetype-webapp
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-archetype-plugin:2.0:create (default-cli) @ standalone-pom ---
[WARNING] This goal is deprecated. Please use mvn archetype:generate instead
[INFO] Defaulting package to group ID: kvm.aaa
Downloading: http://repo1.maven.org/maven2/org/apache/maven/archetypes/maven-archetype-webapp/maven-metadata.xml
Downloaded: http://repo1.maven.org/maven2/org/apache/maven/archetypes/maven-archetype-webapp/maven-metadata.xml (498 B at 0.3 KB/sec)
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-webapp:RELEASE
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: kvm.aaa
[INFO] Parameter: packageName, Value: kvm.aaa
[INFO] Parameter: package, Value: kvm.aaa
[INFO] Parameter: artifactId, Value: AAAWebapp
[INFO] Parameter: basedir, Value: /mnt/hda1
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] ********************* End of debug info from resources from generated POM ***********************
[INFO] project created from Old (1.x) Archetype in dir: /mnt/hda1/AAAWebapp
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.480s
[INFO] Finished at: Sat Aug 06 18:06:32 UTC 2011
[INFO] Final Memory: 7M/18M
[INFO] ------------------------------------------------------------------------

2. AAAWebapp 專案目錄結構

$  tree AAAWebapp/
AAAWebapp/
|-- pom.xml
`-- src
    `-- main
        |-- resources
        `-- webapp
            |-- WEB-INF
            |   `-- web.xml
            `-- index.jsp

5 directories, 3 files

3. 產生 WAR 專案檔

$ cd AAAWebapp/

$ mvn package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building AAAWebapp Maven Webapp 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.4.3:resources (default-resources) @ AAAWebapp ---
[WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ AAAWebapp ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ AAAWebapp ---
[WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /mnt/hda1/AAAWebapp/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ AAAWebapp ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.7.2:test (default-test) @ AAAWebapp ---
[INFO] No tests to run.
[INFO] Surefire report directory: /mnt/hda1/AAAWebapp/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
There are no tests to run.

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

[INFO]
[INFO] --- maven-war-plugin:2.1.1:war (default-war) @ AAAWebapp ---
[INFO] Packaging webapp
[INFO] Assembling webapp [AAAWebapp] in [/mnt/hda1/AAAWebapp/target/AAAWebapp]
[INFO] Processing war project
[INFO] Copying webapp resources [/mnt/hda1/AAAWebapp/src/main/webapp]
[INFO] Webapp assembled in [75 msecs]
[INFO] Building war: /mnt/hda1/AAAWebapp/target/AAAWebapp.war
[INFO] WEB-INF/web.xml already added, skipping
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.140s
[INFO] Finished at: Sat Aug 06 18:12:20 UTC 2011
[INFO] Final Memory: 5M/12M
[INFO] ------------------------------------------------------------------------

4. 佈署 AAAWebapp 專案

$ cp target/AAAWebapp.war /mnt/hda1/apache-tomcat-7.0.19/webapps/

5. 啟動 Tomcat
$ /mnt/hda1/apache-tomcat-7.0.19/bin/startup.sh &
[1] 1321
Using CATALINA_BASE:   /mnt/hda1/apache-tomcat-7.0.19
Using CATALINA_HOME:   /mnt/hda1/apache-tomcat-7.0.19
Using CATALINA_TMPDIR: /mnt/hda1/apache-tomcat-7.0.19/temp
Using JRE_HOME:        /mnt/hda1/jdk1.7.0
Using CLASSPATH:       /mnt/hda1/apache-tomcat-7.0.19/bin/bootstrap.jar:/mnt/hda1/apache-tomcat-7.0.19/bin/tomcat-juli.jar

6. 執行 AAAWebapp 專案

$ curl http://localhost:8080/AAAWebapp/
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>

No Response to "Apache Maven 專案管理平台 - WAR 專案建立與執行"

張貼留言