您好希望将jar中的一些文件复制到我的Java项目的根文件夹中。
我用这个
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>prepare-package</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>net.sourceforge.tess4j</groupId>
<artifactId>tess4j</artifactId>
<version>1.4.1</version>
<type>jar</type>
<includes>win32-x86/*.dll</includes>
<overWrite>true</overWrite>
<outputDirectory>${basedir}</outputDirectory> <!-- project root directory -->
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
问题是我明白了
javaProject
src
target
win32-x86/dll1.dll
win32-x86/dll2.dll
我想要这个
javaProject
src
target
dll1.dll
dll2.dll
我不希望复制jar内的文件夹路径,而只希望将文件转储到项目的根目录中。
有任何想法吗?
谢谢。
最佳答案
您可以使用Jetspeed解压Maven插件:http://pulkitsinghal.blogspot.be/2011/04/jetspeed-finally-unpack-plugin-with.html
有关文档,请参见http://portals.apache.org/jetspeed-2/buildguide/jetspeed-unpack-plugin.html。
您想要的选项是:
<flat>true</flat>
完整示例:
<plugin>
<groupId>org.apache.portals.jetspeed-2</groupId>
<artifactId>jetspeed-unpack-maven-plugin</artifactId>
<version>${org.apache.portals.jetspeed.version}</version>
<configuration>
<unpack>
<artifact>...</artifact>
<file>...</file>
<targetDirectory>...</targetDirectory>
<overwrite>...</overwrite>
<resources combine.children="append">
<resource>
<path>...</path>
<destination>...</destination>
<overwrite>...</overwrite>
<flat>...</flat>
<include>...</include>
<exclude>...</exclude>
<name>...</name>
</resource>
...
</resources>
</unpack>
<skip>...</skip>
<verbose>...</verbose>
</configuration>
</plugin>