我正在尝试使用NetBeans在java maven项目中实现akka.当我从NetBeans运行它时运行正常,但是当我从NetBeans运行runnable jar时,它会生成错误.
Exception in thread "main" com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'akka.remote.log-received-messages'
当我在配置中添加log-received-message时,它会要求另一个配置.这是我用来生成jar文件的插件.
maven-assembly-plugin
我的依赖是
com.typesafe.akka
akka-actor_2.10
2.3.7
com.typesafe.akka
akka-remote_2.10
2.3.7
akka的配置是
akka10300{
akka{
actor{provider = "akka.remote.RemoteActorRefProvider"}
remote {
enabled-transports = ["akka.remote.netty.tcp"]
netty.tcp {
hostname="127.0.0.1"
port=10300
}
}
}
}
解决方法:
有关于在http://doc.akka.io/docs/akka/snapshot/general/configuration.html从“胖罐”运行Akka的警告.问题是有多个reference.conf配置文件,Maven程序集或树荫插件的默认行为是覆盖配置文件的早期实例以后的例子.
为了解决这个问题,建议的方法是使用Maven shade插件生成可执行jar并将其配置为将所有resource.conf文件附加到单个文件中而不是覆盖.建议的Maven shade插件配置如下所示:
org.apache.maven.plugins
maven-shade-plugin
1.5
package
shade
true
allinone
*:*
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
reference.conf
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
akka.Main
标签:java,maven,jar,akka,netbeans
来源: https://codeday.me/bug/20190728/1559724.html