【问题标题】:How to run Jar File in Linux/Windows如何在 Linux/Windows 中运行 Jar 文件
【发布时间】:2015-03-10 02:42:21
【问题描述】:

我已经用 maven 构建了 Java 应用程序,它在 Target 文件夹中构建了所有依赖项, 现在我正在尝试从 Linux 运行该 jar 文件,它给出的错误为 command-java -jar yourApp.jar 参数1

Error- no main manifest attribute, in yourApp.jar

在做了一些谷歌之后,我运行命令如下-

java -cp yourApp.jar  my.pack.testpack.MyMainClass "argument1"

现在它给出错误-

Caused by: java.lang.ClassNotFoundException: my.pack.testpack.common.components.logger.LoggerFactory 

我很惊讶为什么会出现这个问题,如果这个问题必须出现,那么它应该出现在运行时从 eclipse 运行时从 eclipse 运行时运行正常,我还检查了我正在使用的捆绑这个类的 jar 文件文件。

请帮忙

【问题讨论】:

  • 你能分享一下你是如何打包你的jar的吗?解压后里面有什么?

标签: java deployment jar


【解决方案1】:

您需要在 java 命令的类路径中指定所有依赖项。

另一种选择是在清单中指定它们。使用Use of the MANIFEST.MF file in Java 寻求帮助。

【讨论】:

  • 我正在从捆绑了所有依赖项的构建包中运行,请举个例子。
  • 它们是如何捆绑的? jar 里面的 jar,还是你解压所有库类,和你的类一起打包到 jar 里?
【解决方案2】:

在 windows cmd 中:java -jar(file name) 请确保指定 JDK 环境设置的路径

mycomputer,properties环境设置,如果没有,请确保你有名为“path”的变量,make on并将“value”设置为jdk bin文件夹的路径,即c:/Program Files/java/。 ../bin

在 Linux 中:

java -jar <filename>

linux中的java路径设置: 登录您的帐户并打开 .bash_profile 文件

$ vi ~/.bash_profile

使用语法 export JAVA_HOME= 如下设置 JAVA_HOME。如果你的路径设置为/usr/java/jdk1.5.0_07/bin/java,设置如下:

export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java

如下设置PATH:

export PATH=$PATH:/usr/java/jdk1.5.0_07/bin

【讨论】:

  • 这不是用户问题。他没有正确打包jar,因此找不到Main类。
  • 所有路径都已设置,请说明运行时还需要用命令指定,我想请求请不要给出笼统的答案,用一些例子来解释,我相信我已经解释了我的意思做了,谢谢
猜你喜欢
  • 2022-01-06
  • 2013-11-23
  • 1970-01-01
  • 1970-01-01
  • 2013-03-17
  • 2012-12-28
  • 2020-04-02
  • 2013-01-11
  • 2010-09-28
相关资源
最近更新 更多