Gui*_*ido 25 resources maven-2
我试图使用Maven将给定文件夹中包含的所有*.xsd文件移动到另一个文件夹,但没有源子目录结构.
这是我到目前为止:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<id>move-schemas</id>
<phase>generate-sources</phase>
<goals>
<goal>resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/schemas-target</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
...
<resources>
<resource>
<directory>${basedir}/schemas-source</directory>
<includes>
<include>**/*.xsd</include>
</includes>
</resource>
</resources>
Run Code Online (Sandbox Code Playgroud)
它(几乎)正在工作.唯一的问题是它保留了源子目录结构,而我需要删除该层次结构并将所有xsd文件放在目标文件夹中.例:
这是我在schemas-source文件夹中的内容:
schemas-source
?- current
? ?- 0.3
? ?- myfile.xsd
?- old
?- 0.2
?- myfile-0.2.xsd
Run Code Online (Sandbox Code Playgroud)
这就是我在schemas-target文件夹中需要的东西:
schemas-target
?- myfile.xsd
?- myfile-0.2.xsd
Run Code Online (Sandbox Code Playgroud)
Sea*_*oyd 24
我一次又一次地对抗这种限制.
基本上:我不认为只有maven解决方案.你将不得不求助于使用像动态一样的东西
在Maven的Antrun插件
嵌入在Maven的Ant任务,在这种情况下,蚂蚁的副本任务,是这样的:
<copy todir="${project.basedir}/schemas-target" flatten="true">
<fileset dir="${project.basedir}/schemas-source">
<include name="**/*.xsd"/>
</fileset>
</copy>
Run Code Online (Sandbox Code Playgroud)该GMaven插件 让你从你的POM,像这样执行Groovy代码:
new File(pom.basedir, 'schemas-source').eachFileRecurse(FileType.FILES){
if(it.name.endsWith('.xsd')){
new File(pom.basedir, 'schemas-target/${it.name}').text = it.text;
}
}
Run Code Online (Sandbox Code Playgroud)Kee*_*gam 12
有一种方式..它真的很单调和繁琐.只有在想要完全成熟时才实施它.肖恩的答案是最简单的解决方案.
问题是您必须指定每个目录,然后使用通配符作为内部文件.
<execution>
<id>copy-jars</id>
<phase>process-sources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/classes</outputDirectory>
<resources>
<resource>
<directory>${basedir}/resources</directory>
<includes>
<include>xyz.jar</include>
</includes>
</resource>
<resource>
<directory>${basedir}/as-u-like-it</directory>
<includes>
<include>abc.jar</include>
</includes>
</resource>
</configuration>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18076 次 |
| 最近记录: |