wha*_*ong 7 maven-2 maven maven-assembly-plugin
使用maven-assembly-plugin
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.1</version>
<configuration>
<descriptors>
<descriptor>descriptor.xml</descriptor>
</descriptors>
<finalName>xxx-impl-${pom.version}</finalName>
<outputDirectory>target/assembly</outputDirectory>
<workDirectory>target/assembly/work</workDirectory>
</configuration>
Run Code Online (Sandbox Code Playgroud)
在descriptor.xml文件中我们可以指定
<fileSets>
<fileSet>
<directory>src/install</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
</fileSets>
Run Code Online (Sandbox Code Playgroud)
是否可以根据配置文件包含此文件夹或子文件夹中的特定文件?或者其他一些方式......
像这样:
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>src/install/dev</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>
</profile>
<profile>
<id>prod</id>
<build>
<resources>
<resource>
<directory>src/install/prod</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>
</profile>
</profiles>
Run Code Online (Sandbox Code Playgroud)
但它在包装时将资源放入罐中.但是,正如我上面已经提到的那样,我们需要把它放在拉链中:(谢谢!
Rag*_*ram 15
如果您的资源有一个模式(比如说*.properties
),那么您可以在程序集描述符文件中执行以下操作:
<fileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>*.properties</include>
</includes>
</fileSet>
</fileSets>
Run Code Online (Sandbox Code Playgroud)
这会将*.properties
您的target
文件夹中的所有内容复制到程序集zip的根文件夹中.根据您pom.xml
正在运行的配置文件,该target
文件夹中只会显示相应的资源.
归档时间: |
|
查看次数: |
43794 次 |
最近记录: |