簡體   English   中英

如何在 VS Code 中設置 JAVA 環境變量

[英]How to set JAVA environment variable in VS Code

我有一個 spring-boot 項目,我的 IDE 是 VS 代碼。 我想將環境變量傳遞給我的應用程序。 現在我把它設置在 Gradle 命令之前

export PROJECT_NAME=test

./gradlew bootrun

PROJECT_NAME 是我的環境變量,我在 application.properties 中訪問它

在 java 的 VS 代碼中設置環境變量的推薦方法是什么

為了在 VSCode 中為 Spring boot 應用程序設置環境變量,推薦的方法是在項目的 .vscode 文件夾中創建一個 launch.json 文件,然后添加“env”部分,如下例所示:

{
  "configurations": [
    {
      "type": "java",
      "name": "Spring Boot-DemoApplication<demo>",
      "request": "launch",
      "cwd": "${workspaceFolder}",
      "console": "internalConsole",
      "mainClass": "com.example.demo.DemoApplication",
      "projectName": "demo",
      "args": "",
      "env": {
        "PROJECT_NAME": "FOO_PROJECT"
      }
    }
  ]
}

我在嘗試使用自定義環境變量運行 JUNIT 測試時遇到了同樣的問題。 上面提到的答案對我沒有幫助。 相反,根據本文檔,您必須在 setting.json 文件中創建一個 env 對象。 這樣做之后,我可以查詢並獲取用於運行這些測試的自定義環境變量。

{
    "java.semanticHighlighting.enabled": true,
    "window.zoomLevel": 0,
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "java.requirements.JDK11Warning": false,
    "http.proxyAuthorization": null,
    "java.test.config": {
        "name": "ENVIRONMENT_JSON",
        "workingDirectory": "${workspaceFolder}",
        "env": {
            "CF_ORG": "testOrg",
            "CF_SPACE": "testSpace", 
            ....
            ....
        }
    }
}

如果您使用的是以下版本的 VSCode,您可以看到幫助 -> 關於,

Version: 1.60.2 (user setup)
Commit: 7f6ab5485bbc008386c4386d08766667e155244e
Date: 2021-09-22T12:00:31.514Z
Electron: 13.1.8
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.18363

只需go到運行菜單,點擊打開配置,如下圖。

在此處輸入圖像描述

這將打開launch.json ,現在您可以添加特定於您的環境詳細信息的環境詳細信息。 下面給出了示例。

{
    "configurations": [

        {
            "type": "java",
            "name": "Spring-Boot-App",
            "request": "launch",
            "cwd": "${workspaceFolder}",
            "console": "internalConsole",
            "mainClass": "com.blr.appName.ApplicationName",
            "projectName": "projectName",
            "args": "",
            "env": {
                "PROJECT_NAME": "FOO_PROJECT",
                "licenseKeyDetails":"license_details",
                "serialNumber":"ABCDEFG"
                 }
        }
    ]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM