如何配置VSCode以使用参数运行Java MAVEN应用程序?

问题描述

我有一个没有main方法的代码。使用以下命令执行了该项目:

$mvn clean install -Dparam1="folder" -Dparam2="path"

在Eclipse或IntelliJ中,我只需要创建一个maven执行程序,将goas定义为clean install,然后使用-Dparam格式传递maven参数即可。

在VSCode中,我看到了3种不同的方法并进行了以下实验:

  1. lunch.json中创建一个mvn文件,调用命令mvnDebugpreLaunchTask
{
  "version": "0.2.0","configurations": [
    {
        "type": "java","request": "launch",...
        "preLaunchTask": "mvnDebug","vmArgs": [ "clean","install","-Dparam1=\"blabla\"","-Dparam2=\"blablabla\"" ]

    }
  ]
}

我还测试了在preLaunchTask中传递所有命令而没有vmArgs的情况。而且没有用。

  1. 创建一个传递脚本的task.json文件和一个launch.json文件,该文件将在preLaunchTask中调用以{{1的参数taskName中定义的名称创建的任务}}。
task.json

还有{ "version": "0.2.0","configurations": [ { "type": "java","preLaunchTask": "Debug","name": "Launch Program","sourceMaps": true } ]

tasks.json
  1. 我尝试过的第三种方法是使用{ "version": "2.0.0","tasks": [ { "label": "Debug","type": "java","script": "mvnDebug clean install -Dparam1=\"folderName\" -Dparam2=\"blablabla\"","problemMatcher": [] } ] }
settings.json

对于所有人,我都在终端中收到了消息:

{
    "maven.terminal.favorites": [
        {
            "alias": "CLEAN COMPILE","command": "clean install -Dparam1=\"value\" -Dparam2=\"blabla\"","debug": true
        },]
}

伙计们,我需要您提供的是

  1. 此消息是什么意思?
  2. 为什么要等待端口?
  3. VSCode如何使用套接字来实现?
  4. 什么是最好的方法?为什么?
  5. 最重要的一个:如何使用VSCode在没有主要功能代码的情况下运行参数化的JAVA MAVEN?

观察:我的JAVA版本是JDK11,但是我也尝试过使用JDK 8。

非常感谢您。

解决方法

1。在launch.json中,属性vmArgs

JVM的其他选项和系统属性(例如 -Xms -Xmx -D =),它接受一个字符串或字符串数​​组。 debugging-launch

因此它不适用于您的应用程序。

2。在tasks.json中,属性command用于命令执行;

Custome Tasks

3。建议使用设置maven.executable.options ,它为所有mvn命令指定默认选项。

vscode-maven

enter image description here

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...