Java开发中使用IDE工具肯定会很大程度的提高开发效率,但是有时候需要用java命令在服务器上启动Java工程代码来完成一系列的功能 ,当然用ANT也非常方便。下面以简单HelloWorld代码为例子来记录,如何使用最基本的Java命令。
一、编写HelloWorld,代码如下:
复制代码代码如下:
public class Hello{
public static void main(String[] args) {
System.out.println("Hello world");
}
}
二、使用javac命令进行编译。
打开CMD窗口
进入文件所在目录,上述Hello.java所在目录为F:\JavaProject\ahellodemo\src\。
使用javac Hello.java进行编译。完成后可以看到F:\JavaProject\ahellodemo\src\下多了个Hello.class文件
三、使用java命令运行编译后代码。
在CMD窗口中使用java Hello 命令运行编译后代码,输出 Hello world 。
上述过程是Java的实践入门。那么如果这个类是在某个包下呢?假设该类所在的工程目录结构如下
--ahellodemo
--src
--com
--whty
--hello
--Hello.java
--classes
1).HelloWorld.java代码如下:
复制代码代码如下:
package com.whty.hello;
public class Hello{
public static void main(String[] args) {
System.out.println("Hello world");
}
}
2).这时,我们希望代码能够像使用IDE一样被编译到classes目录(该目录需要自己建立)下。下面依然使用javac命令进行编译。
打开CMD窗口
进入工程所在目录,上述工程目录为F:\JavaProject\ahellodemo\。
使用javac -d ./classes ./src/com/whty/hello/Hello.java进行编译。完成后可以看到F:\JavaProject\ahellodemo\classes\下多了个com目录,Hello.class文件也被编译到了F:\JavaProject\ahellodemo\classes\com\whty\hello目录下。
3).使用java命令运行编译后代码。
在CMD窗口中进入工程目录下的classes目录下,然后使用java com.whty.hello.Hello 命令运行编译后代码,输出 Hello world 。
4).打成可运行的jar包
经过上述三个步骤以后,我们可以先在classes目录下编写一个MANIFEST.mf文件内容如下,这里要注意每个冒号后面的英文空格:
复制代码代码如下:
Manifest-Version: 1.0
Main-Class: com.whty.hello.Hello
Class-Path:
然后再CMD中进入工程classes目录,使用 jar -cvfm hello.jar MANIFEST.mf com 命令,这时该目录下回出现hello.jar文件。在CMD窗口中输入 java -jar hello.jar 会输出 Hello world 。
===================================
实践
/**
* javac -d ~/Documents/tool/jars/classes ./MyMain/src/main/java/Method/TreeMain.java
* cd ~/Documents/tool/jars/classes/
* java Method.TreeMain
* vi MANIFEST.mf
*
Manifest-Version: 1.0
Main-Class: com.whty.hello.Hello
Class-Path:
*
* jar -cvfm hello.jar MANIFEST.mf ./
* java -jar hello.jar
*
*/