没有IDE如何编译JAVA项目

本文详细介绍了在没有集成开发环境(IDE)的情况下,如何从下载JDK到配置环境变量,再到编写源代码、编译class文件、打包jar包以及处理有外部依赖库的场景。通过实例演示了如何使用命令行工具javac和jar,以及如何使用Ant自动化编译,帮助开发者了解JAVA项目的编译过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

像Eclipse,IDEA这种JAVA的IDE让程序员变得越来越笨了,连怎样编译这种基础的工作都已经不会了。离开了IDE之后不会导包,不会编译,几乎成了废人一个。不仅降低了工作效率,而且对JAVA的编译连接过程也全部知道,实在是需要及时补习一下。

下面就以JDK1.5为例,为新手介绍一下如何在没有IDE的环境中编译出class文件和jar包

一、首先到oracle官网下载相应的JDK

这一步看似很简单,但其实很多工作了几年的程序员也未必知道如何到官网下载JDK,我见过很多程序员JDK都从别人那里获得或者从百度上下载。

首先到http://www.oracle.com/technetwork/java/javase/archive-139210.html 这个页面可以找到JAVA历史上全部的JDK版本,我们挑自己需要的下载即可,注意区分32位还是64位。另外下载之前可能要注册成Oracle会员,需要花个几分钟,但是不需要交钱


二、配置环境变量

这个我就不细说了,网上一大把。反正只要在cmd中执行java和javac能出来东西就行


三、编写源代码

1、首先建立一个根目录,名字随便起,我这里就叫javalearning

2、建立一个目录用于存放源代码,比如src

3、建立一个目录用于存放编译好的class二进制文件,比如classes

4、在src目录下编写相应的java源代码,不要创建子目录


此时编写一个HelloWorld.java作为主类,还有一个工具类MyTools.java,注意此时HelloWorld.java是import MyTools.java的,换句话说这是个依赖

package test.ant;
import test.ant.MyTools;
import com.alibaba.fastjson.JSONObject;
public class HelloWorld{
public static void main(String[] args){
   System.out.println("Hello world!!!!");
   System.out.println(new MyTools().getTime());
}
}


package test.ant;

import java.util.Date;

public class MyTools {
	public String getTime(){
		return new Date().toString();
	}
}


四、把源码编译成class文件

我们先来一个一个java文件编译试试:


注意:-d参数后跟class文件的输出目录,如果没有-d参数会在当前目录下生成class文件,而且没有根据包名建立相应的目录,会很乱,所以推荐使用-d参数

我们会发现编译MyTools.java的时候没什么问题,但是HelloWorld.java怎么也编译不出来,原因就是HelloWorld.java依赖于MyTools.java,必须同时编译,所以应该这样写

javac -d .\classes .\src\*.java
这就是为什么我推荐把所有java文件都放到src根目录下面的原因。

编译完成之后就可以在classes目录下面看到一个文件夹,名字就是我们的包名,还有N个子文件夹,里面就是classes文件了,如下图

那么有了这两个二进制文件之后如何运行呢?


五、运行classes文件

当我们直接试图执行HelloWorld.class文件时会提示:"找不到或无法加载主类"的错误,如下


所以需要制定-classpath参数规定class文件

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值