如何创建在 Visual Studio Code 中工作的 Java / Maven 项目?

新手上路,请多包涵

我正在尝试创建一个 maven 项目 - 这样我就可以在根文件夹中编译 Java 文件并将类文件输出到另一个文件夹中。

我已经下载了mvn。

我正在尝试与 VS Code 集成。我的目标是在 VS Code 中编辑 java 文件,并在保存编译器时将 .class 文件保存在适当的输出文件夹中。

就是这样 - 没有战争或 jar 文件。

有什么帮助吗?

原文由 dashman 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

以下是完整的步骤列表 - 您可能不需要步骤 1-3,但为了完整起见,我将它们包括在内:-

  1. 下载 VS CodeApache Maven 并安装它们。
  2. 安装适用于 Java 的 Visual Studio 扩展包 - 例如,通过将此 URL 粘贴到 Web 浏览器中: vscode:extension/vscjava.vscode-java-pack ,然后在 VS Code 中打开后单击绿色的安装按钮。
  3. 注意:有关“步骤 3 的更简单的 GUI 版本…(跳过步骤 4)”,请参阅 ADTC 的评论。 如有必要,可以使用 Maven 快速启动原型在适当的本地文件夹中生成新的 Maven 项目: mvn archetype:generate -DgroupId= com.companyname.appname -DartifactId= appname -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false .这将创建一个带有 Maven 标准目录布局appname 文件夹(即 src/main/java/com/companyname/appnamesrc/main/test/com/companyname/appname 开头和一个示例“Hello World!”Java 文件名为 appname .java 以及名为 appname Test.java 的关联单元测试。*
  4. 通过 File menu -> Open Folder… 打开 VS Code 中的 Maven 项目文件夹,然后选择 appname 文件夹。
  5. 打开命令面板(通过查看菜单或右键单击)并输入并选择 Tasks: Configure task 然后选择 Create tasks.json from template
  6. 选择 maven(“执行常见的 Maven 命令”)。这将创建一个包含“验证”和“测试”任务的 tasks.json 文件。可以根据其他 Maven 构建生命周期 阶段添加更多内容。为了专门满足您对在没有 JAR 文件的情况下构建类的要求,需要添加“编译”任务,如下所示:
    {
       "label": "compile",
       "type": "shell",
       "command": "mvn -B compile",
       "group": "build"
   },

  1. 保存上述更改,然后打开命令面板并选择“任务:运行构建任务”,然后选择“编译”,然后选择“继续而不扫描任务输出”。这会调用 Maven,它会在 — 文件夹中创建一个 target src 夹,其中编译的类文件位于 target\classes 文件夹中。

附录:如何运行/调试一个类

在评论中提出问题后,以下是运行/调试的一些步骤:-

  1. 如果尚未显示 Debug 视图,则显示它(通过 View 菜单 - Debug 或 Ctrl Shift D )。
  2. 单击 Debug 视图中的绿色箭头并选择“Java”。
  3. 假设它还没有被创建,一条消息“launch.json 需要启动调试器。你想现在创建它吗?”将出现 - 选择“是”,然后再次选择“Java”。
  4. 在“mainClass”的值中输入主类的完全限定名称(例如 com.companyname.appname.App )并保存文件。
  5. 再次单击 Debug 视图中的绿色箭头。

原文由 Steve Chambers 发布,翻译遵循 CC BY-SA 4.0 许可协议

另一种方法是安装 Maven for Java 插件并在 Visual Studio 中创建一个 Maven 项目。 官方文档中描述了这些步骤

  1. 从命令面板 (Crtl+Shift+P) 中,选择 Maven: Generate from Maven Archetype 并按照说明操作,或者
  2. 右键单击文件夹并选择从 Maven Archetype 生成。

原文由 53c 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题