http://stackoverflow.com/questions/81260/easiest-way-to-merge-a-release-into-one-jar-file
我看这个链接说的可以,但不知道怎么做。
比如在一个路径下,我要打包这个路径下的所有.java,但是里面的.java import了其他路径下的java,我想把所有java文件都打一个包里
可以装一个eclipse插件,叫 fatjar, 可以再eclipse市场搜索安装,也可以在这里 下载,使用方法可以搜索fatjar关键词。
如果你用Maven管理项目,可以选用一些Maven插件,例如maven-assembly-plugin或maven-shade-plugin。
例如用maven-shade-plugin,可以在pom.xml中加上:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.xxg.Main</mainClass>
</transformer>
<!-- 如果项目中用到Spring需要加上下面的配置 -->
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
加上后通过mvn clean package
命令打包。
推荐我的一篇博客:http://xxgblog.com/2015/08/07/maven-create-executable-jar/
使用Maven的assembly插件:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>