Java打jar包并运行实践
来源:互联网 发布:unity3d click 编辑:程序博客网 时间:2024/06/05 16:55
一直知道编写完java程序之后javac 编译,然后java运行class文件。之后还可以将程序打包成jar包,也就是归档文件,第三方的类库不都是以jar包的形式出现的嘛,今天实践了一下还不是一下就成,说明还是有很多东西不清楚,也说明了实践的重要性,一个知识知道了并不代表你会了,你觉的会了不一定是真的会了。一些博客写出来的要经过自己 的验证。
闲话少说,开整。
首先写一个最最最简单的java程序:
public class JarTest {public static void main(String[] args) {System.out.println("Hello World I'm Jaring !");}}
然后javac JarTest.java 编译
然后java JarTest 运行,是没问题的。
下面就开是打包:
直接运行jar命令会得到如下的帮助:
用法:jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
选项包括:
如果有任何目录文件,则对其进行递归处理。
清单文件名、归档文件名和入口点名的指定顺序
与 "m"、"f" 和 "e" 标志的指定顺序相同。
示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中:
示例 2:使用现有的清单文件 "mymanifest" 并
然后我学习了这篇博客的文章:http://blog.sina.com.cn/s/blog_93d133c601013hdm.html
内容如下:
一、打包成一般的jar包
输入如下命令即可:
- jar
cvf counter.jar -C bin .
其中,“-C bin”实际上是告诉jar命令先cd到bin目录下,再在此目录执行没有参数“-C bin”的命令,等价于:
- cd
bin - jar
cvf "."代表当前路径counter.jar . //
二、打包成可运行的jar包
要打包成可运行的jar包,有两种方法,一是手动创建MANIFEST.MF文件,并在其中指定主类;二是使用jar的-e参数指定可运行jar包的入口点(即main类的完全名称).
以Java源代码行数统计程序的打包为例,演示如何打包:
1. 手动创建MANIFEST.MF文件:
1)首先编辑MANIFEST.MF文件,内容如下:
- Manifest-Version:
1.0 - Created-By:
rsljdkt - Class-Path:
. - Main-Class:
Main
说明:
2)使用jar命令进行打包:
- jar
cvfm counter.jar MANIFEST.MF -C bin .
2. 使用-e参数指定入口点:
执行如下命令即可:
- jar
cvfe counter.jar Main -C bin .
方法二:使用Eclipse的Export功能:
一、打包成一般的jar包:
步骤如下:
二、打包成可运行的jar包
步骤如下:
具体步骤:
也就是说打包总的来说有两种方式自己动手java命令行,还有就是使用工具比如说eclipse。
我选择第一种。每一种又分为两种打成一般的jar包, 打成可以运行的jar包,显然果断后者呀~~~
ok,选择好了目的,又有两中选择,半自动和自动,当然选择自动,复制博主代码
在我的D:\java\javacodes 下面执行 jar -cvfe jarTest.java Main bin .
果然打包了,java -jar jarTest.jar 报错:“找不到或无法加载主类 Main”
百度一下:看到这篇文章:http://www.cnblogs.com/adolfmc/archive/2012/10/07/2713562.html
心急如焚也没怎么仔细看,我觉得就是路径呀 类名写的不对。
看了一下手动打包的方案,知道有一个配置文件。再仔细看文章恍然大悟,博主默认将jar打到bin目录里当然是不行的 ,而且我的类名也不是main呀!!!
所以修改我的打包命令:
jar -cvfe JarTest.jar ./(这里要写你的源代码的位置,要不就自己手动配置,你看这办把) .
运行 java -jar JarTest.java
"Hello World I'm Jaring !"
好了,究其原因还是基础不熟,对运行原理不清楚,对java命令行也不清楚。
- Java打jar包并运行实践
- java 打jar包和运行jar
- CMD下运行.java,打jar包
- java打jar包,并签名有感
- java中打jar包和运行jar包
- android将so打到jar包中并运行
- 打jar包,运行jar包
- eclipse打jar包,jar包运行
- 打jar包,及运行jar包
- Java 打jar包
- java 打jar包
- Java 打jar包
- Java 打jar包
- Java打Jar包
- windows系统下DOS命令行打jar包并运行jar包
- java生成jar压缩包并运行
- java生成jar压缩包并运行
- java中ant工具打可以运行jar包实例
- javafX8初探(分隔符)
- DevStore一键锁屏源码学习
- java学习--java多线程总结
- svc: failed to register lockdv1 RPC service (errno 111)解决和nfs配置
- perl特殊变量
- Java打jar包并运行实践
- insertFeatureClass的三种方式
- 使用花生棒穿透内网限制访问黑群辉NAS
- Magento创建CMS Page显示当前允许发货的国家名称,按字母排版.phtml文件
- iOS NSUserDefaults 简介
- expdp远程导入本地
- 远程实时调试手机上的web页面
- 自动生成bean
- java的堆与栈