Java环境变量设置及简单使用
一、Java环境变量
- 使用
Win + Pause
组合键或在”桌面计算机图标”上右键选择”属性”:
- 点击”高级系统设置”,在系统属性对话框的高级页签中选择”环境变量”
- 根据需要设置”用户变量(当前用户有效)”或”系统变量(所有用户有效)”
新建或修改以下变量:
JAVA_HOME
:C:\Program Files\Java\jdk1.7.0_01
(jdk安装目录)
CLASSPATH
:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
(复制即可)
Path
:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(复制即可)
- 测试配置是否成功
在命令行下输入:java -version
二、编译、运行Java程序
1、编写程序
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
2、编译
- 切换到
HelloWorld
文件所在的目录,执行:
javac HelloWorld.java
- 执行完之后会生成
HelloWorld.class
文件
3、运行
- 执行
java HelloWorld
,运行刚生成的.class
文件
三、编译、运行Java程序(带参数)
1、源码
package com.util;
public class Utils
{
public static void hi()
{
System.out.println("Hi, Java!");
}
}
package com.test;
import com.util.Utils;
public class Hi
{
public static void main(String[] args)
{
Utils.hi();
}
}
- 目录结构
2、使用javac -d
命令指定编译后的class文件的目录
- 将class文件编译到当前目录下的classes目录中
javac -d ./classes ./com/test/Hi.java
- 执行后会自动在classes目录下按包路径创建文件夹
备注:如果Java类中依赖了其他jar里的类,在编译时需通过-Djava.ext.dirs
指定jar路径。
例如:
javac MyTest.java -Djava.ext.dirs=./
3、使用-cp
或-classpath
指定class文件路径
java -cp classes com.test.Hi
效果相当于切换到classes目录下,再运行java com.test.Hi
备注:如果Java类中依赖了其他jar里的类,需要在-classpath
参数中也将引用的jar添加进去:
java -classpath .;log4j-1.2.17.jar MyTest
四、jar
命令
jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files
1、常用选项
-c
:创建新档案-v
:在标准输出中生成详细输出-f
:指定档案文件名-m
:包含指定清单文件中的清单信息-x
:从档案中提取指定的(或所有)文件-
-C
:更改为指定的目录并包含其中的文件 - Example
2、简单打包一个类
jar cvf hello.jar HelloWorld.class
- 清单文件:
此种方式生成的jar不能使用java -jar hello.jar
运行
3、打包多个类且指定清单文件
将complex目录中com文件夹编译后的classes目录中的所有文件打包到hi.jar
中:
- 从上面hello.jar中拷贝一份
MANIFEST.MF
文件放在complex目录下:
增加:Main-Class: com.test.Hi
Manifest-Version: 1.0
Created-By: 1.7.0_01 (Oracle Corporation)
Main-Class: com.test.Hi
- 运行
jar cvfm hi.jar MANIFEST.MF -C classes/ .
- 此时会在complex目录下生成
hi.jar
- 运行
java -jar hi.jar
4、解压jar文件到当前目录
jar xvf hello.jar