服务器Java 开发环境配置

快速设置脚本

如果你需要在服务器上快速设置 Java 开发环境:

bash

复制代码
#!/bin/bash
# install_java_vscode.sh

# 1. 安装 JDK (以 Ubuntu 为例)
sudo apt update
sudo apt install openjdk-17-jdk -y

# 2. 验证安装
java -version

# 3. 安装 VS Code Java 扩展
code --install-extension vscjava.vscode-java-pack
code --install-extension redhat.java
code --install-extension vscjava.vscode-java-debug

# 4. 创建测试项目
mkdir test-java-project
cd test-java-project
mkdir src

cat > src/HelloWorld.java << 'EOF'
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, Java in VS Code!");
    }
}
EOF

# 5. 创建 VS Code 配置
mkdir .vscode

cat > .vscode/settings.json << 'EOF'
{
    "java.project.sourcePaths": ["src"],
    "java.project.outputPath": "bin",
    "java.project.referencedLibraries": ["lib/**/*.jar"]
}
EOF

常见问题解决

❌ 问题1: "Java runtime could not be located"

json

复制代码
// settings.json 中添加
{
    "java.home": "/usr/lib/jvm/java-17-openjdk-amd64"
}

❌ 问题2: 无法找到主类

json

复制代码
// .vscode/launch.json 中配置
{
    "type": "java",
    "request": "launch",
    "mainClass": "com.example.Main",
    "projectName": "your-project-name"
}

❌ 问题3: 编译错误

检查 Java 版本兼容性:

json

复制代码
{
    "java.configuration.runtimes": [
        {
            "name": "JavaSE-17",
            "path": "/path/to/jdk-17"
        }
    ]
}

自动化编译配置

对于你的项目,可以创建这样的配置:

json

复制代码
// .vscode/tasks.json
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Build Java Project",
            "type": "shell",
            "command": "javac -d ./bin -cp ./lib/*.jar ./src/**/*.java",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": ["$javac"]
        }
    ]
}
相关推荐
侠客行031715 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪15 小时前
深入浅出LangChain4J
java·langchain·llm
老毛肚16 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
风流倜傥唐伯虎17 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
Yvonne爱编码17 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚17 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂17 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
fuquxiaoguang17 小时前
深入浅出:使用MDC构建SpringBoot全链路请求追踪系统
java·spring boot·后端·调用链分析
琹箐17 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
__WanG18 小时前
JavaTuples 库分析
java