使用守护进程(jsvc)将资源文件添加到类路径



我已经为此纠结了一段时间。我在一个独立的环境中使用Spring3.1。我有一些资源文件需要添加到类路径(applicationXML)中。在日食中,这是一种已知且简单的方式。现在,我正尝试使用Daemon(commons-Daemon-1.0.3.jar)将我的应用程序部署到linux上的独立环境中

如何将那里的资源文件添加到类路径?

您可以做的一件事就是使用Maven Shade插件。这用于创建构建概要文件中所有内容的SuperJARApache和Spring的依赖JAR,以及您自己的代码。Shade插件可以将Classpath条目"."添加到SuperJAR的Manifest中,这正是您能够运行SuperJAR的Main类的方式,但在本地目录和所有组件的JAR中都有classloader外观。

您必须稍微调整您的构建,以便将log4j.properties和application-context.xml以及您希望在构建后让sysadmins/customers修改的其他文件排除在资源/路径之外否则,它们将被烘焙到构建中。

你可以在这里查看我的源代码http://sourceforge.net/projects/jee2pctest/.客户端驱动程序代码提供了一个很好的例子,说明如何使用MavenShade插件创建具有外部属性文件的直接可执行JAR。神奇之处主要在pom.xml文件中。注意,我使用的是Maven构建工具,如果您仍在ANT上使用IDE的内置打包程序,那么您可能需要做一些工作。