VScode创建普通Java工程和Maven工程

文章目录

  • VScode创建普通Java工程和Maven工程
    • 安装JDK
    • 安装插件
    • 创建普通Java工程
      • 单元测试
    • 创建Maven项目
    • 创建webapp
    • 调试时给Main函数传参
    • 附录
      • vscode一些参数说明
      • coderunner参数说明
      • update-alternatives命令使用

VScode创建普通Java工程和Maven工程

以Ubuntu20.04为例,除了安装JDK外,本文其余部分同样适用于Windows

安装JDK

  1. 检查系统是否安装过JDK

    在终端输入java -version,如果有信息输出,则进行以下步骤:

    rpm -qa | grep java查看已安装的java软件包,然后使用rpm -e --nodeps 软件包名卸载。如果是tar.gz包则使用rm -rf 包名删除即可。

  2. 下载并解压

    从https://www.oracle.com/java/technologies/javase-downloads.html下载JDK,然后解压后使用mv命令将文件夹移到安装路径下,这里选择/opt/为安装路径

  3. 配置环境变量

    sudo vim /etc/profile编辑profile文件。在文件末尾添加下面内容

    export JAVA_HOME=/opt/jdk-15.0.1
    export CLASSPATH=.:${JAVA_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH
    

    如果是JDK8则输入

    export JAVA_HOME=/opt/jdk1.8.0_171
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib       
    export PATH=${JAVA_HOME}/bin:$PATH
    

    保存并使用source /etc/profile使环境变量立即生效

  4. 测试

    使用java -version和javac命令测试

  5. 多版本JDK切换

    (1) 同时使用多个版本时安装jenv可无需配置jdk的环境变量。

    下载:终端输入

    git clone https://github.com/gcuisinier/jenv.git ~/.jenv
    
    

    配置:~/.bash_profile为环境变量文件,根据实际修改

    echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
    echo 'eval "$(jenv init -)"' >> ~/.bash_profile
    source ~/.bash_profile
    

    添加JDK

    jenv add /opt/jdk1.8
    jenv add /opt/jdk14
    

    查看已添加的JDK的link

    jenv versions
    #删除多余link
    jenv remove 版本号
    

    设定全局java版本:每次更换完记得使用source刷新环境变量,如source /etc/profile,这条命令通常可以解决jenv: no such command `enable-plugin’这种错误

    #设置全局java版本
    jenv global 1.8
    通过java -version查看
    #设置本地文件夹java版本
    jenv local 1.8
    

    开启插件

    开启对JAVA_HOME的控制

    jenv enable-plugin export
    

    如果使用的是maven,请运行以下命令:

    jenv enable-plugin maven
    

    支持的插件:

    $ jenv plugins
       ant
       export
       golo
       gradle
       grails
       groovy
       lein
       maven
       sbt
       scala
       springboot
       vlt
    

    参考链接:http://www.victorchu.info/posts/3be2fbfe.html

安装插件

在这里插入图片描述
在这里插入图片描述
上图的Extension Pack包括下图的插件
VScode创建普通Java工程和Maven工程_第1张图片
推荐安装
(1)查看字节码文件
在这里插入图片描述
(2)xml文件(后面创建maven工程可以格式化xml文件)
VScode创建普通Java工程和Maven工程_第2张图片
(3)用于创建maven工程时用于依赖分析
在这里插入图片描述
还有vscode一些很好用的插件请查看我的另一篇博客
常用插件

创建普通Java工程

VScode创建普通Java工程和Maven工程_第3张图片
VScode创建普通Java工程和Maven工程_第4张图片
VScode创建普通Java工程和Maven工程_第5张图片
在这里插入图片描述
VScode创建普通Java工程和Maven工程_第6张图片
注意:下次打开文件夹时依然需要是上图这样的目录结构。否则一次打开多个project,当源码中有中文时,使用coderunner会出现无法运行或乱码的情况(即使设置了coderunner在终端运行也没用)

调试运行

VScode创建普通Java工程和Maven工程_第7张图片
VScode创建普通Java工程和Maven工程_第8张图片

settings.json文件内容

{
    "files.autoSave": "onFocusChange", //自动保存
    "java.dependency.packagePresentation": "hierarchical",
    "java.dependency.syncWithFolderExplorer": false,
    "editor.lineHeight": 26,
    "editor.fontSize": 14,
    "files.exclude": {
        "**/.classpath": true,
        "**/.project": true,
        "**/.settings": true,
        "**/.factorypath": true
    },
    "code-runner.runInTerminal": true,
    "code-runner.executorMap": {
    //如果有包名,则需将下面的java $fileNameWithoutExt修改为java 包名.$fileNameWithoutExt
    //如java com.example.$fileNameWithoutExt
        "java": "cd $dir && javac $fileName -encoding utf8 -d ${dir}\\..\\..\\build &&  cd ${dir}\\..\\..\\build &&java $fileNameWithoutExt"
    },
    "java.project.sourcePaths": [//src为工程的源码相对路径
        "src"
    ],
}

"code-runner.executorMap"中配置看不懂的看附录
VScode创建普通Java工程和Maven工程_第9张图片

单元测试

从https://github.com/junit-team/junit4/wiki/Download-and-Install下载两个jar包
VScode创建普通Java工程和Maven工程_第10张图片VScode创建普通Java工程和Maven工程_第11张图片

创建Maven项目

假设已经安装了maven
VScode创建普通Java工程和Maven工程_第12张图片
这里以创建普通maven工程为例。webapp类似
VScode创建普通Java工程和Maven工程_第13张图片
VScode创建普通Java工程和Maven工程_第14张图片
VScode创建普通Java工程和Maven工程_第15张图片
创建完如下图所示
VScode创建普通Java工程和Maven工程_第16张图片
调试运行和单元测试与上面一样.不同点在于以下两点

  1. 要将settings.json中修改为java com.example.$fileNameWithoutExt也即前面要加包名,不过一般不会选择2这种方式运行,因为创建新包需要修改.此外在target中已经有相应的class文件.
  2. 单元测试只需要在pom.xml中加入
    <dependency>
       <groupId>junitgroupId>
       <artifactId>junitartifactId>
       <version>4.11version>
       <scope>testscope>
     dependency>
    

不过一般创建好maven项目,其自动添加了Junit依赖.
如果有编译问题,先按F1输入clean Java Language Server Workspace,清理工作空间

创建webapp

VScode创建普通Java工程和Maven工程_第17张图片
VScode创建普通Java工程和Maven工程_第18张图片
创建完后目录如下图所示
VScode创建普通Java工程和Maven工程_第19张图片

调试时给Main函数传参

在launch.json中根据main函数所在的类,添加类似如下代码

{
            "type": "java",
            "name": "Launch MainTest",
            "request": "launch",
            "mainClass": "MainTest",//类名
            "projectName": "JavaSE",//工程名
            "args": ["1","2","3"], //给main函数传参
}

附录

vscode一些参数说明

下面参数中,加{}表示没有双引号,如VScode_source\java_source\MavenProject
没加则有引号,如"VScode_source\java_source\MavenProject"
可以自行根据实际情况加或不加

$workspaceRoot :VSCode中打开的文件夹的路径
$dir :正在运行的代码文件的目录
$dirWithoutTrailingSlash :正在运行的代码文件的目录,没有尾部斜杠
$fullFileName :正在运行的代码文件全称,即文件路径+文件名+类型后缀
$fileName :正在运行的代码文件名称,即文件名+类型后缀
$fileNameWithoutExt :没有扩展名的情况下运行的代码文件的基本名称
${workspaceFolder} :表示当前workspace文件夹路径,也即C:\Users\admin\Desktop\test
${workspaceRootFolderName}:表示workspace的文件夹名,也即test
${file}:文件自身的绝对路径,
${relativeFile}:文件在workspace中的路径
${fileBasenameNoExtension}:当前文件的文件名,不带后缀,
${fileBasename}:当前文件的文件名
${fileDirname}:文件所在的文件夹路径
${fileExtname}:当前文件的后缀,
${lineNumber}:当前文件光标所在的行号
${env:PATH}:系统中的环境变量

coderunner参数说明

"code-runner.runInTerminal": true,
"code-runner.executorMap": {
      "java":"cd $dir && javac $fileName -d $workspaceRoot/class/ &&  cd $workspaceRoot/class/ &&java $fileNameWithoutExt"
},

这里可以认为是四条命令的组合:
-d $workspaceRoot/class/指定了编译的class文件的存储位置
java $fileNameWithoutExt当有包名时需要加上,如java.com.yi.$fileNameWithoutExt。

update-alternatives命令使用

使用语法:
update-alternatives --install link name path priority [–slave link name path]…
其中link为系统中功能相同软件的 公共链接目录,比如/usr/bin/java(需绝对目录);

name为命令链接符名称,如java;

path为你所要使用新命令、新软件的所在目录;

priority为优先级, 当命令链接已存在时,需高于当前值,因为当alternative为自动模式时,系统默认启用priority高的链接;
详细见:https://blog.csdn.net/duan9015/article/details/102531839

(2) 使用以下命令选择JDK版本

update-alternatives --config java

(3) 如果第一步有路径错误使用类似如下命令删除

sudo update-alternatives --remove java /opt/jdk1.8.0_171/bin

导入Jar包快捷键:Alt+shift+o
涉及到tomcat环境变量注意问题,见:https://blog.csdn.net/jxpxlinkui/article/details/79649204

你可能感兴趣的:(开发工具使用,java,开发工具)