jar版本的Shell脚本

时间:2014-06-23 12:39:42

标签: java spring shell unix classpath

我使用java进行了spring framework项目。该项目使用属性文件读取jdbc属性。它还使用log4j属性文件,我在其中进行日志记录配置。

如何在shell脚本中引用这些属性文件并运行.jar文件。有人可以为这个实例建议脚本,jar文件,日志,属性文件等的良好目录结构吗?

1 个答案:

答案 0 :(得分:0)

我建议在类路径上提供配置文件,如:

java -server -cp "${libPath}:${configurationPath}:${HOME}/somethingInteresting" -Dlog4j.configurationFile=${configurationPath}/log4j2.xml ...

以下结构:

|-- bin
|   |-- start.sh
|   `-- stop.sh
|-- config
|   |-- Dev
|   |   |-- config.properties
|   |   `-- log4j2.xml
|   |-- Test
|   |   |-- config.properties
|   |   `-- log4j2.xml
|   |-- QA
|   |   |-- config.properties
|   |   `-- log4j2.xml
|   |-- Prod
|   |   |-- config.properties
|   |   `-- log4j2.xml
|-- lib
|   |-- log4j-1.2-api-2.0-beta9.jar
|   |-- log4j-api-2.0-beta9.jar
|   |-- log4j-core-2.0-beta9.jar
|   |-- slf4j-api-1.6.6.jar
|   |-- spring-aop-3.2.8.RELEASE.jar
|   |-- spring-beans-3.2.8.RELEASE.jar
|   |-- spring-context-3.2.8.RELEASE.jar
|   |-- spring-core-3.2.8.RELEASE.jar
|-- logs
|   |-- appLog.log
|   |-- appLog.errors.log