手动编译并运行java程序

以前写java代码,都是直接用idea或者eclipse,然后点击运行按钮便可自动完成代码的编译以及运行。因此,一直想试试怎么不借助开发工具来完成java程序的编译以及运行。

以下所有步骤皆在windows系统上操作

1.首先新建一个目录src,存放源代码。

然后写一个简单的HelloWorld类,使用默认package.

public class HelloWorld{
	public static void main(String[] args){
	System.out.println("HelloWorld");
	}
}

结构如下图

2.编译并运行代码

2.1进入src所在目录,按住shift,鼠标右键,选择在此处打开命令窗口。

2.2依次输入·javac HelloWorld.java  java HelloWorld,编译运行代码

查看编译后的目录

3.给HelloWorld指定包名com

3.1在src目录下新建一个com目录,并将HelloWorld.java剪切到com目录下

3.2修改HelloWorld.java如下

package com;
public class HelloWorld{
	public static void main(String[] args){
	System.out.println("HelloWorld");
	}
}

目录结构如下:

3.3在src目录下打开命令行窗口,编译并运行代码

注意:一定要在src 目录下进行编译,src目录包含了所有java文件及包,执行的时候也一样。

4.让HelloWorld.java  引用其他包中的类

4.1在src目录下新建一个文件夹cn

4.2在cn目录下新建一个SendMesage.java,代码如下

package cn;
public class SendMessage{
	
	public void Send(String mess){
		System.out.println("SendMethod:"+mess);
	}
		
}

4.3修改HelloWorld如下

package com;
import cn.SendMessage;
public class HelloWorld{
	public static void main(String[] args){
	    System.out.println("HelloWorld");
		SendMessage sm=new SendMessage();
		sm.Send("test");
	}
}

4.4编译运行(注意cmd打开时的路径仍为src

5.指定编译的输出路径

使用javac命令时,如不指定输出路径,class文件默认与java文件在一起

5.1与src同级目录建一个class文件夹

5.2重新编译

5.3查看class文件夹

5.4在class文件夹下执行java命令

6.引用jar包中的class

6.1在src同级目录新建一个lib文件夹

6.2将fastjson-1.2.72.jar(其他jar也行)复制到lib下

6.3src目录下新建一个model文件夹,并添加一个Student.java

package model;
public class Student{
	private String name;
	private int age;
	private String address;
	public void setName(String name){
		this.name=name;
	}
	public String getName(){
		return this.name;
	}
	public void setAge(int age){
		this.age=age;
	}
	public int getAge(){
		return this.age;
	}
	public void setAddress(String address){
		this.address=address;
	}
	public String getAddress(){
		return this.address;
	}
}

6.4修改HelloWorld.java如下

package com;
import cn.SendMessage;
import model.Student;
import com.alibaba.fastjson.JSONObject;
public class HelloWorld{
	public static void main(String[] args){
	    System.out.println("HelloWorld");
		SendMessage sm=new SendMessage();
		sm.Send("test");
		
		Student student=new Student();
		student.setName("Jane");
		student.setAge(24);
		student.setAddress("American");
		String s1=JSONObject.toJSONString(student);
		System.out.println(s1);
	}
}

6.5编译

-cp表示类路径,多个类路径用;隔开,.表示当前路径,编译时javac会去指定的目录下寻找源文件编译,

使用javac -cp时,.当在开头会报错,如下:

6.6进入class目录下执行java命令

-cp表示类路径,多个类路径用;隔开,.表示当前路径,运行时java会去指定的类路径下寻找class文件执行,*表示lib下的所有jar,但不会递归搜索

7.手动用java命令启动一个springboot项目

7.1将springboot工程打成jar包(用开发工具),并将其中的lib目录复制出来,lib目录中的jar即为所依赖的所有第三方jar

7.2进入class目录下执行java命令,

我的启动类位于io.renren下

执行:

        

很少写博客,也不太会排版,如有错误请指出。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值