/ / Akka: chýba akka.version - scala, akka

Akka: chýba akka.version - scala, akka

Mám projekt scala, ktorý som spustiljemne vnútri IntelliJ s konfiguráciou Run / Debug nastavenou na aplikáciu a teraz by som rád vytvoril jar na spustenie pomocou java -jar .jar. Toto je projekt maven, nie SBT.

Mám tri moduly a vrcholový modul, ktorýobsahuje všetky ostatné moduly má referenčné.conf vo zložke zdrojov. Je to minimálna aplikácia.conf, nie veľa nastavení, ale jeden z modulov má vlastný referenčný súbor.conf.

Vytvoril som artefakt založený na mojom najvyššom module a postavil som ho na vytvorenie pohára. Keď to vykonám s javou

Exception in thread "main" java.lang.ExceptionInInitializerError
at com.se.pd.Main.main(Main.scala)
Caused by: com.typesafe.config.ConfigException$Missing: No configuration setting found for key "akka.version"
at com.typesafe.config.impl.SimpleConfig.findKey(SimpleConfig.java:124)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:145)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:151)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:159)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:164)
at com.typesafe.config.impl.SimpleConfig.getString(SimpleConfig.java:206)
at akka.actor.ActorSystem$Settings.<init>(ActorSystem.scala:168)
at akka.actor.ActorSystemImpl.<init>(ActorSystem.scala:504)
at akka.actor.ActorSystem$.apply(ActorSystem.scala:141)
at akka.actor.ActorSystem$.apply(ActorSystem.scala:118)
at com.se.pd.ServiceMain$class.$init$(ServiceMain.scala:25)
at com.se.pd.Main$.<init>(Main.scala:17)
at com.se.pd.Main$.<clinit>(Main.scala)

Keď rozbalím súbor, vidím zlúčený referenčný súbor.conf v koreňovom adresári.

Čo mi chýba? Potrebujem urobiť niečo konkrétne, keď vytvorím svoj ActorSystem? Snažil som sa vymazať všetky moje konfiguračné súbory a spustiť so všetkými predvolenými nastaveniami a stále to nefunguje, aj keď v takom prípade sa chyba zmenila zo sťažovania na "akka.version" na sťažovanie na "akku". "Nemám načítať predvolené akky?

odpovede:

3 pre odpoveď č. 1

Opravil som to na moje účely, ale naozaj mi to neopisuje, čo to je. Moja oprava (špecifická pre IntelliJ IDEA) mala zmeniť artefakt z:

"výpis na cieľ JAR"

na

"kopírovať do výstupného adresára a prepojiť prostredníctvom manifestu"

Predpokladám, že sa niečo stane, keď vytvorím veľkú tuk.

--

Chcel som len pridať lepšie riešenie na vytvorenie "tukovej nádoby" s mavenom. ale Nemôžem vziať úver, pretože vyzerá ako stránka Akka, ktorá je nižšie uvedenáZoltan teraz navrhuje rovnaké riešenie a vo všetkej úprimnosti si nemôžem spomenúť na to, kde som to našiel. Možno som sa dostal do aktualizovanej stránky už v minulosti. Prečítajte si tento odkaz na oveľa lepšie informácie.

takže:

Použite zásuvný modul Shader Maven na vytvorenie tukovej nádoby Potom sa uistite, že ste zlúčili konfiguračné súbory:

<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>reference.conf</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>myMainClass</mainClass>
</transformer>

Pomocou tejto konfigurácie môžem úspešne vybudovať tukové poháre.