首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Maven2 施用

2012-10-26 
Maven2 应用1.我用mvn -DgroupIdcom.sixconnex -DartifactIdsixconnex -Dversion1.0 -DarchetypeArtifa

Maven2 应用
1.我用

mvn -DgroupId=com.sixconnex -DartifactId=sixconnex -Dversion=1.0 -DarchetypeArtifactId=maven-archetype-webapp 

建了个web项目.并且创建了目录结构如下:
src/main/javasrc/main/recoursessrc/main/configsrc/main/filterssrc/main/webapp/WEB-INF/classesssrc/main/sitesrc/test/javasrc/test/resourcestarget/classestarget/test-classes


2.我运行 mvn eclipse:eclipse -Dwtpversion=1.5 生成eclipse web 项目的配置文件.

3.我将项目import入eclipse jee中,修改添加了M2_REPO的classpath variables指向local repository.

4.我的项目有依赖hibernate3 和 spring 3.0.0.RC3 的jar
pom.xml 文件如下:
<properties><spring.maven.artifact.version>3.0.0.RC3</spring.maven.artifact.version></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.7</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.14</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.4.2</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.4.2</version></dependency><dependency><groupId>jboss</groupId><artifactId>javassist</artifactId><version>3.1</version></dependency><!-- Obtaining Spring Support --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-oxm</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.maven.artifact.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-expression</artifactId><version>${spring.maven.artifact.version}</version></dependency><!-- Obtaining Hibernate support --><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>3.3.2.GA</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-annotations</artifactId><version>3.4.0.GA</version><exclusions><exclusion><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId></exclusion></exclusions></dependency><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>1.1.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.10</version></dependency></dependencies><reporting><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-checkstyle-plugin</artifactId><version>2.4</version></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-pmd-plugin</artifactId><version>2.3</version></plugin><plugin>              <groupId>org.codehaus.mojo</groupId>        <artifactId>emma-maven-plugin</artifactId>        <version>1.0-alpha-2</version>        <inherited>true</inherited>                </plugin>      <plugin>         <groupId>org.codehaus.mojo</groupId>         <artifactId>surefire-report-maven-plugin</artifactId>         <inherited>true</inherited>      </plugin>  </plugins></reporting><build><finalName>sixconnex</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.6</source><target>1.6</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-checkstyle-plugin</artifactId><version>2.4</version></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-pmd-plugin</artifactId><version>2.3</version></plugin><plugin>              <groupId>org.codehaus.mojo</groupId>        <artifactId>emma-maven-plugin</artifactId>        <version>1.0-alpha-2</version>        <inherited>true</inherited>                  <executions>          <execution>            <phase>process-classes</phase>                           <goals>              <goal>instrument</goal>            </goals>          </execution>        </executions>      </plugin>      <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-surefire-plugin</artifactId>        <inherited>true</inherited>        <configuration>          <forkMode>once</forkMode>          <reportFormat>xml</reportFormat>          <classesDirectory>${project.build.directory}/generated-classes/emma/classes</classesDirectory>            </configuration>              </plugin></plugins></build>


问题是:
依赖的这些jar文件是放在local repository cache 中的, eclipse开发的时候没问题,能找到jar包,
        可以当我启动Tomcat 跑程序的时候,就会出现找不到jar包的情况, 应为WEB-INF/lib下没有这些依赖的jar包,
        当我把所以的jar包都手动拷贝到WEB-INF/lib下再跑Tomcat的时候,程序就能正常的找到jar包了. 我想有没有办法
       在maven编译的时候自动将依赖的jar包放到lib目录下去, 这样我就能跑Tomcat了.

解决方案:
http://www.mkyong.com/maven/eclipse-web-deployment-assembly-maven-dependencies-issue/

Eclipse 3.5 之前,配置Java EE Module即可;
Eclipse 3.6 +, 用 mvn eclipse:eclipse -Dwtpversion=2.0即可。

热点排行