我有一个库,它要求我使用aspectjweaver jar指定一个javaagent。例如:
java -jar -javaagent:/some/location/aspectjweaver-1.8.2.jar myFatJar.jar这个很好用。但是,我的fatjar将要运行的环境没有aspectjweaver-1.8.2.jar,而且我不能把它放在那里(获得一个更可配置的环境可能是我以后要走的一条路)。
是否有一种方法,最好是使用sbt-程序集,将aspectjweaver打包到我的fatjar中,并以这种方式运行它?如果重要的话,我的应用程序是一个使用Scala的喷雾应用程序,它是使用sbt构建的。
约束条件
发布于 2016-02-28 10:02:36
如果您已经完全控制了构建过程,为什么不使用编译时编织而不是加载时编织呢?然后,您只需将AspectJ运行时库aspectjrt.jar打包到胖jar中,问题就解决了。您甚至可以避免运行时在应用程序启动时织入的开销。
我所能想到的使这种方法成为问题的唯一原因是,您需要在构建过程的控制之外编织连接点。
https://stackoverflow.com/questions/35615577
复制相似问题