我在Visual Studio Code中初步搭建了基本的Java环境,安装了官方推荐的几个Java扩展插件
我想要文件名和类名默认设置为我创建的项目名,同时默认模板的主函数后面不需要这一段抛出异常代码。
在给出解决方案的同时,我希望能详细解释下各个设置的具体含义,最好不要直接给个链接(笑哭)
Java Extension Pack插件 settings.json可以配置模板:
"java.templates": [
{
"body": [
"public class ${TM_FILENAME_BASE} {",
"\tpublic static void main(String[] args) {",
"\t\t$0",
"\t}",
"}"
],
"description": "Java Class",
"name": "Class"
}
]
至于文件名,可以在命令里输入
touch 文件名.java
快速创建
之前我也想用vs开发java ,环境搞了好久咩搞好,放弃了, 用idea吧 方便
请使用intellij idea,这样可以大大节约你的时间,如果你介意盗版,可以是用intellij idea社区版...再三建议,我趟过这个坑
idea 开发java更合适
java模板的修改目录:(注意版本号,自行确认)%UserProfile%\.vscode\extensions\vscjava.vscode-java-dependency-0.21.2\templates\invisible-project\src
App.java直接修改文件内容即可。再新建项目就是新。
插件源码,要修改新建的文件名,这个要度源码了。
https://github.com/Microsoft/vscode-java-dependency
以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:
要修改默认的Java文件名和类名,可以在VSCode的设置中进行配置。具体步骤如下:
"java.templates": {
"class": [
{
"body": [
""
],
"description": "Java class",
"fileName": "${fileBasenameNoExtension}.java",
"template": "public class ${fileBasenameNoExtension} {\n\tpublic static void main(String[] args) {\n\t\tSystem.out.println(\"Hello World!\");\n\t}\n}"
}
],
"fileHeader": "",
"javadoc": {}
}
其中,修改后的“fileName”选项使用了VSCode内置的变量“${fileBasenameNoExtension}”,表示文件名只使用没有扩展名的部分,即你创建的项目名。至于默认模板的主函数后面的异常代码,可以在VSCode的“Java: Configuration”设置中进行配置。具体步骤如下:
"java.configuration.runtimes": [
{
"name": "JavaSE-1.8",
"path": "/usr/lib/jvm/java-8-openjdk-amd64",
"default": true,
"options": [
"-Xmx1024M",
"-Xms1024M",
"-XX:+UseG1GC",
"-XX:+UseStringDeduplication",
"-Dfile.encoding=UTF-8"
],
"env": {
"JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64"
},
"debugOptions": [
"-Xdebug",
"-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
]
}
],
"java.configuration.checkProjectSettingsExclusions": false,
"java.configuration.checkImplicitUseOfJavaSdk": "warning",
"java.configuration.target": "11",
"java.configuration.runtimesByClasspath": [
{
"name": "JavaSE-1.8",
"path": "/usr/lib/jvm/java-8-openjdk-amd64"
}
],
"java.templates": {
"class": [
{
"body": [
""
],
"description": "Java class",
"fileName": "${fileBasenameNoExtension}.java",
"template": "public class ${fileBasenameNoExtension} {\n\tpublic static void main(String[] args) {\n\t\tSystem.out.println(\"Hello World!\");\n\t}\n}"
}
],
"fileHeader": "",
"javadoc": {}
},
"java.semanticHighlighting.enabled": true,
"java.errors.showOnSave": "warning",
"java.format.settings.url": "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml",
"java.home": "/usr/lib/jvm/java-8-openjdk-amd64",
"java.codeGeneration.generateComments": true,
"java.codeGeneration.insertOverrideAnnotation": true,
"java.codeGeneration.insertFinalModifierForFields": false,
"java.codeGeneration.insertFinalModifierForLocals": false,
"java.codeGeneration.insertDefaultConstructor": false,
"java.codeGeneration.insertJavaDocComments": true,
"java.codeGeneration.generateHashCodeEquals": false,
"java.codeGeneration.generateToString": false,
"java.codeGeneration.sortMembers": false,
"java.codeGeneration.organizeImports": true,
"java.codeGeneration.importsToAddOnPaste": "",
"java.codeGeneration.importsToAddOnType": "",
"java.debug.settings.callStackView": "hierarchical",
"java.debug.settings.showHex": false,
"java.debug.settings.showQualifiedNames": false,
"java.debug.settings.allowBreakpointsEverywhere": false,
"java.debug.settings.exceptionBreakpointFilters": [],
"java.debug.settings.sourcePaths": [],
"java.debug.settings.exceptionBreakpoints": [],
"java.debug.settings.smartStep": true,
"java.debug.settings.displayAllArrays": false,
"java.debug.settings.displayAllObjects": false,
"java.debug.settings.exceptionOnNullPointerException": false,
"java.debug.settings.logLevel": "INFO",
"java.debug.settings.showStaticVariables": false,
"java.debug.settings.showSyntheticMembers": false,
"java.debug.settings.showHexFloats": false,
"java.debug.settings.showLogicalStructure": false,
"java.debug.settings.showQualifiedTypeNames": false,
"java.debug.settings.showToStringObjects": false,
"java.debug.settings.showStaticInitializers": false,
"java.debug.settings.showVariableType": true,
"java.debug.settings.skipStaticFinalFields": false,
"java.debug.settings.timeout": 120,
"java.debug.settings.traceLogDirectory": "",
"java.debug.settings.traceLogs": false,
"java.debug.settings.useDynamicClasspath": true,
"java.debug.settings.showStaticFinalFields": false,
"java.debug.settings.collectLineMappings": false,
"java.debug.settings.enableJdwpDebugging": true,
"java.debug.settings.debugServer": "auto",
"java.debug.settings.debuggeePort": 0,
"java.debug.settings.debuggeeHost": "localhost",
"java.debug.settings.useJavaHotSwap": true,
"java.debug.settings.updateClasspath": true,
"java.debug.settings.hotSwapConfiguration": "auto",
"java.debug.settings.hotSwapLogLevel": "INFO",
"java.debug.settings.enablePreviewFeatures": false
其中,修改后的“java.configuration.runtimes”选项中添加了“options”选项,并将其中的“-ea”(表示启用断言)删除,这样默认模板的主函数后面就不会有抛出异常代码了。以下答案由GPT-3.5大模型与博主波罗歌共同编写:
在 Visual Studio Code 中创建 Java 项目时,项目名称默认为文件名和类名。要修改默认设置,请执行以下步骤:
例如,如果您要创建名为“hello”的 Java 项目,则可以将模板更改为:
public class hello {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
默认情况下,Visual Studio Code 在 Java 项目的主函数中插入一个“throw new RuntimeException("Stub")”的异常处理程序。要将其删除,请执行以下步骤:
{
"java.templates.statement.main": [
"public static void main(String[] args) {",
" // TODO: Add your code here",
"}"
]
}
现在,创建新项目时将使用此模板,其中主函数没有异常处理程序。您只需要替换“TODO: Add your code here”注释中的代码即可。
希望以上解决方案能够解决您的问题。
如果我的回答解决了您的问题,请采纳!
看这个,或许可以帮助你,小白篇Vscode搭建java环境:
https://blog.csdn.net/LKFMYQQ/article/details/120519567
VsCode 配置java环境(详细教程)
跟着步骤来
https://blog.csdn.net/weixin_61370021/article/details/126788606