Java应用程序在Unix环境中抛出错误

时间:2015-01-28 14:19:33

标签: java unix

我们已经使用maven打包我们的Java应用程序。 我们有一个包含应用程序代码和配置的精简app.jar文件,以及一个包含所有依赖项jar的lib文件夹。 在Windows上,一切运行良好。

我已将文件复制到unix,并将所有文件权限添加到每个jar。 运行时,应用程序会从lib文件夹中的一个jar中抛出此错误:

./lib/activemq-broker-5.9.0.jar: line 1: PK: command not found
./lib/activemq-broker-5.9.0.jar: line 2: NC: command not found
./lib/activemq-broker-5.9.0.jar: line 3: syntax error near unexpected token `)'
./lib/activemq-broker-5.9.0.jar: line 3: ½NCYzò   Ó¯META-INF/MANIF

在unix上,这是命令行的格式:

java -cp app.jar;./lib/*; com.company.app.Start --param=value1 --param2=value1

我想知道是否有人看到任何明显的问题。

由于

1 个答案:

答案 0 :(得分:2)

你必须在unix环境的classpath中使用:作为分隔符:

java -cp app.jar:./lib/* com.company.app.Start --param=value1 --param2=value1

因为;是一个命令分隔符。