您的位置:首页 > 编程语言 > Java开发

命令行执行java程序

2015-02-10 09:19 337 查看
转自:http://blog.csdn.net/lee_decimal/article/details/5885406

第一:简单的命令行(没有package)

c:/temp/bin/GetGreeting.java

[java] view
plaincopy

public class GetGreeting

{

public static void main(String [] args)

{

System.out.println("Hello world");

}

}

1.编译:cmd--cd到c:/temp/bin javac GetGreeting.java

生成GetGreeting.class文件

2.执行:java Greeting

打印出Hello world

第二:有package的java程序

c:/temp/bin/client/GetGreeting.java

1.cd到c:/temp/bin/client javac GetGreeting.java

在c:/temp/bin/client 目录中生成 GetGreeting.class文件

2.cd.. 退回到c:/temp/bin

执行 java client.GetGreeting

打印出Hello world

第三:用命令行调用jar文件(无package)

将GetGreeting.java放在c:/temp/bin中----javac 编译生成GetGreeting.class

将GetGreeting.java删除,用jar -cvf test.jar *.*命令打包成jar文件

修改jar文件中的META-INF/MANIFEST.MF文件

在最后加一行 Main-Class: GetGreeting(注意:冒号和GetGreeting间有一空格,否则报错-Invalid or corrupt jarfile C:/temp/bin/test.jar),然后回车,否则也报错-Failed to load Main-Class manifest attribute from

C:/temp/bin/test.jar

命令行执行:java -jar c:/temp/bin/test.jar

第四:用命令行调用jar(有package)

将GetGreeting.java放在c:/temp/bin/client中----cd到client目录,用javac 编译生成GetGreeting.class

将GetGreeting.java删除,返回到bin目录,用jar -cvf test.jar *.*命令打包成jar文件

修改jar文件中的META-INF/MANIFEST.MF文件

在最后加一行 Main-Class: client.GetGreeting(注意:冒号和client.GetGreeting间有一空格,否则报错-Invalid or corrupt jarfile C:/temp/bin/test.jar),然后回车,否则也报错-Failed to load Main-Class manifest attribute from

C:/temp/bin/test.jar

命令行执行:java -jar c:/temp/bin/test.jar

第五:用命令行执行class(带参数)

类似第一步

GetGreeting.java

[java] view
plaincopy

public class GetGreeting

{

public static void main(String [] args)

{

System.out.println("input length is:"+args.length);

for(int i=0;i<args.length;i++)

{

System.out.println("input "+i+":"+args[i]);

}

}

}

输入:java GetGreeting 1 2 3

输出



第六:命令行调用jar文件(带参数)

类似第三步,使用命令 java -jar c:/temp/bin/test.jar 1 2 3

输出结果与上图一样。

第七:命令行调用jar文件(jar文件代码里引用其他jar文件)

以连接数据库为例

将ConnDB.java放在c:/temp/bin中

[java] view
plaincopy

import java.sql.Connection;

import java.sql.DriverManager;

public class ConnDB

{

public static void main(String[] args)

{

String drive = "oracle.jdbc.driver.OracleDriver";

String url = "jdbc:oracle:thin:@ip:1521:esd";

String username = "scylla";

String password = "******";

try

{

Connection conn = null;

Class.forName(drive);

DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

conn = DriverManager.getConnection(url,username,password);

System.out.println("conn is:"+conn);

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

用javac编译时需将classes12.jar包解压缩放在bin中(否则编译不通过,提示找不到package)

删掉ConnDB.java,打jar包conn.jar

在bin中建立文件夹lib,将classes12.jar文件放在lib目录中

修改conn.jar中META-INF/MANIFEST.MF

Class-Path: ./lib/classes12.jar(制定jar路径)

Main-Class: ConnDB(注意冒号后面有一个空格,最后回车)

用java -jar c:/temp/bin/conn.jar 调用即可!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: