我尝试评估我的Java程序及其所有依赖项(包括可传递的依赖项)是否适合Java Compact3配置文件。
我可以使用-profile compact3
编译器开关来编译程序,但这只会检查我的程序。
如何自动(例如使用Maven)验证所有依赖项均符合配置文件要求?
我可以签出所有依赖项的源代码,并使用上述编译器开关手动构建它们,但这是不可行的。
最佳答案
有一个jdeps-maven-plugin适合您的用例
将此添加到pom.xml
<build>
<plugins>
<plugin>
<groupId>com.github.marschall</groupId>
<artifactId>jdeps-maven-plugin</artifactId>
<version>0.4.0</version>
<configuration>
<profile>true</profile>
<recursive>true</recursive>
</configuration>
</plugin>
</plugins>
</build>
然后跑
$ mvn jdeps:jdeps
不幸的是,如果不满足配置文件要求,该插件将不支持自动失败的构建,但是可以编写一个外部脚本来处理输出。
例如
mvn jdeps:jdeps | awk '/ ->/ && /Full/ {print}'