无IDE环境(含远程服务器)运行Java项目的分步操作指南
无IDE环境下运行Java项目的分步流程
1. 确认Java环境就绪
登录远程服务器(或打开本地cmd),执行以下命令检查JDK是否完整安装:
- 检查JRE:
java -version - 检查编译器:
javac -version
若任意命令报错,需先完成JDK安装,并确保JAVA_HOME和PATH环境变量包含JDK的bin目录。
2. 整理项目文件结构
确保项目目录结构清晰,示例如下:
your-project/ ├── src/ # 存放所有.java源码文件 │ └── com/ │ └── example/ │ └── Main.java # 含main方法的入口类 ├── lib/ # 存放项目依赖的所有.jar文件 └── target/ # 手动创建,用于存放编译后的.class文件
Maven/Gradle管理的项目直接使用默认结构即可,无需手动调整。
3. 编译Java源码
根据项目是否有外部依赖,分两种情况操作:
无外部依赖的项目
进入项目根目录,执行编译命令:
javac -d target src/com/example/*.java
-d target:指定编译后的.class文件输出到target目录- 若存在多个包,可使用
find src -name "*.java" | xargs javac -d target(Linux/macOS)批量编译
有外部依赖的项目
编译时需将依赖jar包加入类路径:
Windows环境:
javac -d target -cp "lib\*;src" src\com\example\Main.java
Linux/macOS环境:
javac -d target -cp "lib/*:src" src/com/example/Main.java
-cp "lib/*:src":指定类路径包含lib下所有jar包和源码目录(注意Windows用;分隔,Linux/macOS用:)
4. 运行编译后的程序
无外部依赖的项目
进入项目根目录,执行运行命令:
java -cp target com.example.Main
-cp target:指定类路径为存放.class文件的target目录com.example.Main:主类的完整全限定名(包名+类名)
有外部依赖的项目
运行时需同时包含依赖jar包:
Windows环境:
java -cp "target;lib\*" com.example.Main
Linux/macOS环境:
java -cp "target:lib/*" com.example.Main
5. 用构建工具简化操作(推荐)
若项目使用Maven或Gradle,无需手动处理依赖和编译,直接打包运行:
Maven项目
- 打包:
mvn package(自动完成编译、依赖处理,生成可执行jar到target目录) - 运行:
java -jar target/your-project-1.0-SNAPSHOT.jar(替换为实际jar文件名)
Gradle项目
- 打包:
gradle build(生成可执行jar到build/libs目录) - 运行:
java -jar build/libs/your-project-1.0.jar(替换为实际jar文件名)
常见失败原因排查
- 找不到主类:确认主类包含
public static void main(String[] args)方法,且运行时输入的全限定名正确 - 类路径错误:检查分隔符(Windows用
;,Linux用:),确保包含target目录和所有依赖jar - 依赖缺失:确认lib目录下jar包完整,或用
mvn assembly:single生成包含依赖的可执行jar
内容的提问来源于stack exchange,提问作者Suresh Stark
相关产品推荐
相关产品推荐

