命令行编译java程序的三种方法
2014-03-05 23:01
288 查看
manifest文件那一段参考 https://sites.google.com/site/waue0920/Home/java/java-de-da-bao-chengjar-fang-fa
sss@ssstekiMacBook-Pro[src] ll
total 16
drwxr-xr-x 4 sss staff 136 3 5 17:39 class_helloworld/
drwxr-xr-x 5 sss staff 170 3 5 17:36 helloworld/
drwxr-xr-x 2 sss staff 68 3 5 17:59 jar/
helloworld里存放java文件。
当 Helloworld.java 是这样的时候
3 public class Helloworld
4 {
5 public static void main(String[] args)
6 {
7 System.out.println("hello world!");
8 }
9 }
1.目录转到helloworld下:
javac Helloworld.java
java Helloworld
2.如果要把class 文件放到class_helloworld集中管理则:
进入src文件夹
javac -d class_helloworld/ helloworld/Helloworld.java
java -cp class_helloworld/ Helloworld
3.生成jar再运行(大型程序适用)
javac -d class_helloworld/ helloworld/Helloworld.java
jar -cvf test.jar -C class_helloworld/ .
mv test.jar jar/
chmod +x jar/test.jar
java -cp jar/test.jar Helloworld
--------------------------------------------------------
如果java程序里面有包
1 package helloworld;
2
3 public class Helloworld
4 {
5 public static void main(String[] args)
6 {
7 System.out.println("hello world!");
8 }
9 }
javac -d class_helloworld/ helloworld/Helloworld.java
jar -cvf test1.jar -C class_helloworld/ .
chmod +x test1.jar
mv test1.jar jar/
java -cp jar/test1.jar helloworld.Helloworld
要查看jar包的内容 可以输入 jar -tvf test1.jar
解压jar包 可以输入 jar -xvf test1.jar
----------------------------------------------------
接下来试了下怎么用manifest。
当前目录为iteratorTest
目录结构为:
drwxr-xr-x 3 sss staff 102 Mar 9 18:41 class/
drwxr-xr-x 3 sss staff 102 Mar 9 18:42 jar/
drwxr-xr-x 4 sss staff 136 Mar 9 20:00 java/
先 javac -d class/ java/iteratorTest.java
然后 vim manifest.mf
输入 (名称: 值)
Main-class: iteratorTest 注意冒号后面有个空格 否则出错。从其他资料上看到 这一句是唯一不能省的 其他的都能省。
保存后执行
jar cvfm test.jar MANIFEST.MF -C class/ . 将class里的所有.class文件和manifest.mf一起打包成test.jar
然后
java -jar test.jar 完成。
sss@ssstekiMacBook-Pro[src] ll
total 16
drwxr-xr-x 4 sss staff 136 3 5 17:39 class_helloworld/
drwxr-xr-x 5 sss staff 170 3 5 17:36 helloworld/
drwxr-xr-x 2 sss staff 68 3 5 17:59 jar/
helloworld里存放java文件。
当 Helloworld.java 是这样的时候
3 public class Helloworld
4 {
5 public static void main(String[] args)
6 {
7 System.out.println("hello world!");
8 }
9 }
1.目录转到helloworld下:
javac Helloworld.java
java Helloworld
2.如果要把class 文件放到class_helloworld集中管理则:
进入src文件夹
javac -d class_helloworld/ helloworld/Helloworld.java
java -cp class_helloworld/ Helloworld
3.生成jar再运行(大型程序适用)
javac -d class_helloworld/ helloworld/Helloworld.java
jar -cvf test.jar -C class_helloworld/ .
mv test.jar jar/
chmod +x jar/test.jar
java -cp jar/test.jar Helloworld
--------------------------------------------------------
如果java程序里面有包
1 package helloworld;
2
3 public class Helloworld
4 {
5 public static void main(String[] args)
6 {
7 System.out.println("hello world!");
8 }
9 }
javac -d class_helloworld/ helloworld/Helloworld.java
jar -cvf test1.jar -C class_helloworld/ .
chmod +x test1.jar
mv test1.jar jar/
java -cp jar/test1.jar helloworld.Helloworld
要查看jar包的内容 可以输入 jar -tvf test1.jar
解压jar包 可以输入 jar -xvf test1.jar
----------------------------------------------------
接下来试了下怎么用manifest。
当前目录为iteratorTest
目录结构为:
drwxr-xr-x 3 sss staff 102 Mar 9 18:41 class/
drwxr-xr-x 3 sss staff 102 Mar 9 18:42 jar/
drwxr-xr-x 4 sss staff 136 Mar 9 20:00 java/
先 javac -d class/ java/iteratorTest.java
然后 vim manifest.mf
输入 (名称: 值)
Main-class: iteratorTest 注意冒号后面有个空格 否则出错。从其他资料上看到 这一句是唯一不能省的 其他的都能省。
保存后执行
jar cvfm test.jar MANIFEST.MF -C class/ . 将class里的所有.class文件和manifest.mf一起打包成test.jar
然后
java -jar test.jar 完成。
相关文章推荐
- cmd命令行执行java程序的编译和执行的方法及可能出现找不到或无法加载主类的错误的解决
- Java 命令行模式下编译 MapReduce 程序
- 在Dos命令行下编译Java程序问题和解决方法集锦
- Notepad++编译解释java程序方法
- win10下Java程序在cmd中能够编译却无法运行的解决方法
- 命令行状态下编译Java程序
- 关于Java程序反编译(破解)的方法
- 命令行编译运行java程序
- 用dos命令行执行java程序的方法
- 在命令行下编译单个带包名的java类的方法
- cmd命令对java程序进行编译时出现:“编码GBK的不可映射字符”两种解决方法,以及dos下帮助文档的制作
- 使用命令行编译运行指定了包的Java程序
- java SE运行环境在windows下的配置和命令行方式编译与运行java程序
- java程序用命令行编译
- Java命令行编译并执行Java程序
- Java程序在命令行下编译运行打Jar包
- [Debug]Windows下命令行编译java程序,文件组织/问题/解决
- 关于 Java源文件带有package的普通程序和Applet编译和运行时错误的处理方法
- 使用命令行编译和运行java程序
- 用dos命令行执行java程序的方法