【问题标题】:Running a class that relies on Jar file in terminal在终端中运行依赖于 Jar 文件的类
【发布时间】:2023-04-07 06:29:01
【问题描述】:

对于我的计算机科学入门课程,他们建议使用 eclipse 作为 IDE。我过去使用过 vim,并且更喜欢使用它。我们创建的程序依赖于两个.jar 文件,因为它是一个介绍类,我们没有使用java 的main 类功能。

现在我们下载两个.jar 文件,然后使用Eclipse IDE 的build path 函数将.jar 文件与我们的代码链接起来。然后,当我们在 Eclipse IDE 上运行时,它工作得非常好。

我将如何在 ubuntu 终端中执行此操作?谢谢!

TLDR; Intro comp sci 类要我们使用 eclipse,我要使用 vim。你如何 build path 让 jar 文件在 ubuntu 终端中与我的 class 代码一起使用。

看了这个链接,没用 Java: how to import a jar file from command line

图片更新

【问题讨论】:

  • 看过了,没用
  • 我知道你喜欢 vim,但在你克服它并开始使用 IDE 之前,你不会成为一个高效的 Java 开发人员,或者至少不会像你应该的那样高效。跨度>
  • @MeBigFatGuy 谢谢你!一旦 vim 工作,我将开始测试 IDE
  • @CtrlAltDelete :你的类的路径必须匹配它的包:com/mypackage/lab1.class。还要在类路径中添加.,它是当前目录。

标签: java


【解决方案1】:

您可以使用 CLASSPATH 环境变量指定 jar 文件,也可以使用 CLASSPATH 环境变量

export CLASSPATH="a.jar:b.jar"
java com.mypackage.MyClass

或在命令行上使用-cp 喜欢

java -cp a.jar:b.jar com.mypackage.MyClass

【讨论】:

  • 你确定你在命令行中提到的包是正确的吗?
  • 是的,有两个 .jar 文件,一个用于测试,一个用于图像。我们没有在这个实验室创建任何图像,所以我只需要一个 .jar 文件
  • 去掉jar后面的冒号。添加多个时的分隔符
  • 仍然说:Could not find or load main class com.mypackage.lab1
  • 我之前评论的意思是,你确定 com.mypackage.lab1 是适合你班级的正确包
【解决方案2】:

从命令行执行时包含您的 jar 依赖项。

java -cp tester.jar lab1

【讨论】:

  • 这不起作用Error: Could not find or load main class lab1
  • 做这个之前需要先打包吗
  • 你确定你的lab1类包含main方法吗?不,你不强制需要一个包。但一开始,没有它你会更好。请考虑使用像 Eclipse 这样的 IDE 来轻松解决基本错误。
  • lab1 类中没有 main 方法,我在上面提到过。我将使用 IDE,但我想在使用它之前弄清楚它是如何工作的。我喜欢在使用它们之前了解它们是如何工作的
  • 那么,在开始编写代码之前,请先看看众多关于 Java 程序如何工作的 Java 教程! tutorialspoint.com/java/java_quick_guide.htm 是数千个可用的之一。 main 方法是 JVM 寻找并开始执行的 Java 类的入口点。没有它,它无法进入并开始执行,因此运行时错误
猜你喜欢
  • 2015-07-30
  • 2015-07-25
  • 2012-12-28
  • 2012-08-29
  • 1970-01-01
  • 1970-01-01
  • 2016-09-23
  • 1970-01-01
  • 2020-02-22
相关资源
最近更新 更多