【发布时间】:2020-02-13 11:59:48
【问题描述】:
我是 Java 新手,不了解 Java 的编译内容如何与它的虚拟机一起工作,所以请用简单的语言写下你的答案。
我正在使用 VSCode(在 macOS 上)来制作 Java 应用程序。我正在使用Eclipse New Java Project 创建我的项目,它设置了如下文件结构:
TestApp
│
│-- .vscode
│-- bin
╵-- src
╵-- app
╵-- App.java
现在我可以编译我的简单项目,并在 vscode 中打印:
package app;
public class App {
public static void main(String[] args) throws Exception {
System.out.println("Hello!");
}
}
我现在如何像应用程序一样运行它?我环顾四周,发现了有关创建 .jar 文件的信息,但我不明白这是在做什么。
.jar 是可执行文件吗?当我尝试点击它时,我得到一个错误,在搜索之后,我看到你需要以某种方式添加主类,并且我不断收到很多错误,并且 Stack Overflow 上的许多解决方案都没有任何效果。
简单来说,我如何编译一个Java项目,以便我可以像应用程序一样打开它,而不是每次都在vscode中编译? vscode 中是否有一个选项可以为我制作这个.jar 和东西?
【问题讨论】:
-
假设您可以运行 javac 命令,类似: javac -cp ./src app.App 应该可以工作。还有一些其他帖子指定了当您必须处理包时如何编译为 jar。
-
@LethalLadders 我可以运行
javac命令,但我应该使用哪个目录?.../TestApp/bin/app? -
对于我所说的命令,我相信你应该在 /TestApp 中。 -cp 指定路径的其余部分(在本例中为 src 文件夹)。然后app.App说编译app包中的App类。
-
@LethalLadders 在获得
Class names, 'app.App', are only accepted if annotation processing is explicitly requested之后,我尝试将.java放在最后,但仍然不起作用(file not found: app.App.java) -
@LethalLadders 另外,
javac不只是产生一个类吗?我已经在bin中有vscode 生成的App.class。
标签: java visual-studio-code jar