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

标签 java linux spring daemon jsvc

我为此苦苦挣扎了一段时间。 我在独立环境中使用 Spring3.1。我有需要添加到类路径(applicationXML)中的资源文件。在 eclipse 中,这是一种众所周知且简单的方法。现在,我正在尝试使用守护进程 (commons-daemon-1.0.3.jar) 将我的应用程序部署到 linux 上的独立环境中。

如何将资源文件添加到类路径中?

最佳答案

您可以做的一件事是使用 Maven Shade 插件。这用于创建构建配置文件中所有内容的 SuperJAR——来自 Apache 和 Spring 的依赖 JAR,以及您自己的代码。 Shade 插件可以添加“.”的类路径条目。到 SuperJAR 的 list 中,这正是您将能够运行 SuperJAR 的主类的方式,但是让类加载器在本地目录和所有组件的 JAR 中查找。

您必须稍微调整您的构建,以便像 log4j.properties 和 application-context.xml 以及您希望在构建后拥有 sysadmins/customers modifer 的其他文件不在资源/路径之外 - 否则他们将融入构建中。

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

关于java - 使用守护进程(jsvc)将资源文件添加到类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12034718/

相关文章:

java - 无需AOP框架即可动态添加方面的软件设计

linux - 用于文件名路径列表的 mkdir 命令

java - 登录后 Spring Security 的重定向不正确

java - 为 "Step"作用域 bean 编写 JUnit 测试 - 没有为作用域名称 "step"注册作用域(Spring Batch 3.0.10)

java - 在 Android 上播放音频时出现问题

java - 事件来到 Esper Engine 后阅读 Mysql 数据库?

java - 如何在android中使用GMT获取当前日期?

c - 为什么这个 fork() 输出产生 8 而不是 5?

php - (XAMPP) Linux :MySQL said: Documentation #1932 - Table 'phpmyadmin.pma__column_info' doesn't exist in engine

java - 对象生命周期记录