java 开发的ide_不用ide开发java项目

- 不用ide开发项目?听着很高端大气的样子啊。不过,不用ide用什么呢?

- 用javac/java命令啊。

- 这不明显是折腾自己吗?!

相信上面的场景大家都见过或听过,也相信有很多使用java一段时间后的人会偶然冒出一个想法————

平时开发时用惯了ide,其实却对java的编译过程一无所知,我能不能不用ide来开发?

想着想着就试了。笔者也是其中一员哦。

笔者假设各位已安装好jdk并配置好环境变量了。笔者的jdk版本是1.7。

新建一个文件夹来做实验吧。笔者建的是E:/dev-code/java/noide。以后就在noide文件夹下做实验了哦。

对文件夹名字的要求有二:

1) 文件夹路径中不要有空格;

2) 文件夹路径中不要有中文/日文/韩文等。

接下来,在noide文件夹下新建src文件夹,此文件夹将保存我们的java代码。在src下面建立文件夹层次为\test\billy\jee\noide\testtest\,在其下建立NoIDETest.java,内容为:

// NoIDETest.java文件开始

package test.billy.jee.noide.testtest;

public class NoIDETest{

public static void main(String[] args){

System.out.println("Hello,

javac!"); }

}

// NoIDETest.java文件结束

· 最简单的编译运行

按windows+R打开运行对话框,输入cmd打开命令行窗口,输入e:并回车,然后输入命令cd

dev-code\java\noide进入源文件文件夹,然后输入

javac src\test\billy\jee\noide\testtest\NoIDETest.java

会在NoIDETest.java文件夹下生成一个NoIDETest.class文件,再次输入命令cd

src先进入src文件夹下,接着输入

java test.billy.jee.noide.testtest.NoIDETest

就能看到输出结果Hello, javac!

看,简单吧。可是我们并不总是希望(其实是“总是不希望”)生成的class文件和java文件在一起。行,那也能办。

· 在指定位置生成class文件

正常情况下我们不希望生成的class文件和java源文件在一起,这时候可以指定class文件的位置,使用-d选项就可以做到。

在NoIDETest文件夹下新建一个classes文件夹(以后生成的class文件就在这里了。),

同样输入e:并回车,然后输入命令

cd dev-code\java\noide

进入源文件文件夹,再输入

javac -d classes

src\test\billy\jee\noide\testtest\NoIDETest.java

接着不要停,继续输入命令

cd classes以进入classes文件夹,再次输入

java test.billy.jee.noide.testtest.NoIDETest

也能看到输出结果Hello, javac!

也能成,不过这只是一个类的使用,下面我们演示“高级”一点的,不用一个类,改用——两个类,哈哈。

· 一个类调用另一个类

单个类编译明显没有意思,我们让它调用另一个类。接下来我们要做的就是建另外一个类,

同样进入NoIDETest跳到noide的src目录,然后依次建立com\billy\jee\noide\bean\文件夹[1],然后新建一个User.java文件,内容为

// User.java文件开始

package com.billy.jee.noide.bean;

public class User{

public Integer id;

public String name;

public String toString(){

return "User

[id="+id+",name="+name+"]";

}

}

// User.java文件结束

User类是一个很简单的类,只有两个public属性和一个toString方法(属性用public修饰是因为我不想写set/get了),接着修改我们的NoIDETest.java

// NoIDETest.java文件开始

package test.billy.jee.noide.testtest;

import com.billy.jee.noide.bean.*;

public class NoIDETest{

public static void main(String[] args){

System.out.println("Hello,

javac!");

User user = new User();

user.id = 1;

user.name = "Billy";

System.out.println(user); }

}

// NoIDETest.java文件结束

下面就要开始我们的编译工作了。

因为在NoIDETest类中使用了User类,所以我们得先编译User类,再编译NoIDETest类。

在noide目录下输入命令

javac -d classes src\com\billy\jee\noide\testtest\User.java

即会将User.class生成在noide目录下的classes目录的相应位置,然后编译NoIDETest.java,不过这次得指定User.class的位置,输入命令

javac -d classes -cp classes

src\test\billy\jee\noide\testtest\NoIDETest.java

此命令中有一个选项-cp(即-classpath)表示要指定依赖类的位置,

然后 cd classes 进入classes目录下,输入命令

java test.billy.jee.noide.testtest.NoIDETest

就能看到如下结果:

Hello, javac!

User [id=1,name=Billy]

功能是实现了,但每次修改类文件再输入命令也太蛋疼了吧,万一我的类文件很多呢,万一包名忘记引入了呢,万一书写一直有误呢……这些问题我们会接下来会慢慢解决,我们的目的不是抛弃ide,而是能在万一没有ide的时候不至于傻脸,仅此而已[2]。

文档就此结束了。欢迎指正~~

说明:

[1]:这个包和上个包的区别在于开头的com和test,所有的核心文件都在com下,测试用的类在test下,养成规范比较好。

[2]:不对,还能显示我们技术高超,哈哈。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值