最近由于项目需要,研究了一下maven的打包,项目要做到
1,生成3个目录/lib,/conf,/bin目录
2,把所有的jar目录编译、拷贝到/lib目录(包括maven的jar包和lib目录下的jar,以及编译的jar包)
3,把所有的启动脚本从工程根目录拷贝到/bin目录
4,把所有的配置文件从src/main/resources拷贝到/conf
下面是配置的pom.xml,我把相关的配置都加了注释,一看就能明白,把build节点拷贝到你们的项目中,就基本可以用了:)
4.0.0 test test.common 0.0.1-SNAPSHOT jar test.common http://maven.apache.org UTF-8 src/main/java src/main/resources ${project.build.directory}/conf lib ${project.build.directory}/lib . **/*.sh **/*.bat ${project.build.directory}/bin org.apache.maven.plugins maven-compiler-plugin 3.1 true lib org.apache.maven.plugins maven-jar-plugin 2.6 ${project.build.directory}/lib true lib/ *.xml *.properties org.apache.maven.plugins maven-dependency-plugin 2.10 copy-dependencies package copy-dependencies ${project.build.directory}/lib org.apache.maven.plugins maven-resources-plugin 2.7 UTF-8 maven-source-plugin 2.4 true UTF-8 ${project.build.directory}/lib compile jar
然后执行maven package打包。如果是eclipse,在Project Explorer-> Run As –> Maven Build… –>在Goals中输入package,点Run进行编译。
在bin目录下的启动脚本start.bat可以这么写:
@ECHO OFFset CLASSPATH=%JAVA_HOME%/libset JAVA=%JAVA_HOME%/bin/javaset CLASSPATH=%CLASSPATH%;../confset JAVA_OPTIONS=-Djava.ext.dirs="../lib""%JAVA%" -Xms512m -Xmx1024m -classpath "%CLASSPATH%" %JAVA_OPTIONS% test.HangqingEntrance
以上:
把conf目录添加到CLASSPATH中,因为conf目录保存的是从src/main/resources拷贝来的配置文件。
设置-Djava.ext.dirs="../lib" 。因为jar包都放在lib目录。