Java Maven JAR和其他文件的打包
我是maven的新手,有一个项目有一些依赖项。现在Maven应该创建一个包含所有Java Maven JAR和其他文件的打包,java,maven,ant,m2eclipse,packaging,Java,Maven,Ant,M2eclipse,Packaging,我是maven的新手,有一个项目有一些依赖项。现在Maven应该创建一个包含所有/src/main/java文件的jar文件,并将它们放在a目录中。我希望在构建过程中实现以下目标: 将所有依赖项jar放入文件夹B 将项目中的一些其他文件放入C 然后我需要它压缩和压缩 设置一些在gzip中设置的执行权限 最后,将两个存档推送到某个网络驱动器上 我已经使用ANT实现了这一点,但是我想对Maven做一个干净的端口,而不是调用大的ANT文件 有人能给我指出正确的方向吗?我应该使用哪些插件?首先,看看
/src/main/java
文件的jar文件,并将它们放在a
目录中。我希望在构建过程中实现以下目标:
- 将所有依赖项jar放入文件夹
B
- 将项目中的一些其他文件放入
C
- 然后我需要它压缩和压缩
- 设置一些在gzip中设置的执行权限
- 最后,将两个存档推送到某个网络驱动器上
有人能给我指出正确的方向吗?我应该使用哪些插件?首先,看看Maven Assembly插件。它可能满足你所有的需要。我已经用过了,但只是一点点,所以我可以给你们指出你们可能需要的信息 您将为此插件创建XML配置文件,该文件称为程序集描述符,用于指导其操作 插件页面上提供了一些预定义的功能。至少有一个在zip中的源代码会帮助你 程序集说明已打开
- 您可以复制dependencySets中的依赖项
- 在文件集中,可以定义文件权限
- 关于GZipping,您可以查看此主题
- 如果程序集插件无法处理共享驱动器上的复制,请查看maven复制插件
-Maven资源插件-如果资源是您需要复制的。首先,请查看Maven汇编插件。它可能满足你所有的需要。我已经用过了,但只是一点点,所以我可以给你们指出你们可能需要的信息 您将为此插件创建XML配置文件,该文件称为程序集描述符,用于指导其操作 插件页面上提供了一些预定义的功能。至少有一个在zip中的源代码会帮助你 程序集说明已打开
- 您可以复制dependencySets中的依赖项
- 在文件集中,可以定义文件权限
- 关于GZipping,您可以查看此主题
- 如果程序集插件无法处理共享驱动器上的复制,请查看maven复制插件
-Maven资源插件-如果资源是您需要复制的。我不确定我是否知道您的所有需求 Maven可以自己或使用插件完成以下工作: 0/“mvn compile”将编译源文件夹下的java文件,src/main/java是默认文件夹,并将它们复制到目标/类中 1/“mvn包”将为每个包压缩一个罐子或一个war 2/maven资源插件可以执行文件操作 3/maven汇编插件可以归档资源 4/“mvn安装”将把打包的JAR安装到本地maven存储库中 5/“mvn部署”将在您有权限的情况下将打包的JAR部署到远程maven存储库中
使用Maven时,将文件复制到其他项目中不是一个明智的想法。在Project C pom.xml中添加maven依赖项更像maven风格。我不确定我是否知道您的所有需求 Maven可以自己或使用插件完成以下工作: 0/“mvn compile”将编译源文件夹下的java文件,src/main/java是默认文件夹,并将它们复制到目标/类中 1/“mvn包”将为每个包压缩一个罐子或一个war 2/maven资源插件可以执行文件操作 3/maven汇编插件可以归档资源 4/“mvn安装”将把打包的JAR安装到本地maven存储库中 5/“mvn部署”将在您有权限的情况下将打包的JAR部署到远程maven存储库中
使用Maven时,将文件复制到其他项目中不是一个明智的想法。在Project C pom.xml中添加maven依赖项更像maven风格。除了maven汇编插件(以及其他几种方法)之外,签出 Maven阴影插件 该插件提供了将工件打包到 uber jar,包括其依赖项和着色(即重命名) 一些依赖项的包 下面是一个示例maven插件配置,用于创建具有jar依赖项的项目的jar输出:
<build>
<plugins>
<plugin>
<groupid>org.apache.maven.plugins</groupid>
<artifactid>maven-shade-plugin</artifactid>
<version>1.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainclass>Main Class of the jar file</mainclass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
maven阴影插件
1.4
包裹
阴凉处
jar文件的主类
除了Maven Assembly插件(以及其他几种方法),签出
Maven阴影插件
该插件提供了将工件打包到
uber jar,包括其依赖项和着色(即重命名)
一些依赖项的包
下面是一个示例maven插件配置,用于创建具有jar依赖项的项目的jar输出:
<build>
<plugins>
<plugin>
<groupid>org.apache.maven.plugins</groupid>
<artifactid>maven-shade-plugin</artifactid>
<version>1.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainclass>Main Class of the jar file</mainclass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
maven阴影插件
1.4