使用Eclipse编辑由Maven shade插件合并的合并后META-INF文件

时间:2016-04-10 12:58:33

标签: eclipse maven maven-shade-plugin

我正在使用project called vertx-bigapp-skeleton来简化Vert.x部署。

为此,我决定在Verticle中创建一个名为META-INF/vertx.verticle的文件(example project的Maven子模块)。

如果我使用Maven(mvn clean package && java -jar server/target/application.jar)编译和运行项目,一切正常,Maven shade插件正确合并了vertx.verticle文件。

我使用Eclipse,如果我运行示例服务器工件,它只会从healh verticle找到vertx.verticle文件。

也可以在eclipse中合并这个META-INF/vertx.verticles文件,这样我就可以在Eclipse中开发和调试了吗?

可以在此处找到vertx.verticles文件的Loader:https://github.com/marcelalburg/vertx-bigapp-skeleton/blob/master/src/main/java/com/weeaar/vertxwebconfig/service/ServiceLoader.java

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。

我用过

public static final String FACTORIES_VERTICLES_LOCATION = "META-INF/vertx.verticle";
input = getClass().getClassLoader().getResourceAsStream( FACTORIES_VERTICLES_LOCATION );

但这只是找到了其中一个文件

如果我切换到

Enumeration<URL> urls = ClassLoader.getSystemResources( FACTORIES_VERTICLES_LOCATION );
一切正常。

感谢marcel