java项目导出_Eclipse打包Java工程并导出jar包

Eclipse打包Java工程并导出jar包

标签:#程序#

时间:2016-12-12 20:48:12

作者:小木

当我们编写好程序后,通常需要导出并打包成jar格式的文件,以便于在其他地方执行,本篇博客讲述如何将java工程打包成jar格式。

假设我们有一个工程是CmdTest,其包含的结构文件如下。我们有一个主类,其包名为main。我们在下面有个java程序:

```java

package main;

import org.kohsuke.args4j.CmdLineException;

import org.kohsuke.args4j.CmdLineParser;

import option.CmdOpt;

public class HelloWorld {

public static void main(String[] args) {

CmdOpt cmo = new CmdOpt();

CmdLineParser argsParser = new CmdLineParser(cmo);

if (args.length == 0){

showHelp(argsParser);

return;

}

try {

argsParser.parseArgument(args);

} catch (CmdLineException e) {

e.printStackTrace();

}

System.out.println(cmo.name);

}

public static void showHelp(CmdLineParser parser){

System.out.println("LDA [options ...] [arguments...]");

parser.printUsage(System.out);

}

}

```

有一个外部依赖包是lib文件夹下的 args4j-2.0.6.jar。该工程打包成jar格式文件步骤如下:

第一步,创建MANIFEST.MF文件:右键项目名称,依次点击**“New”--“File”**,然后在**“File name”**中输入**MANIFEST.MF**,(注意:每个可执行的jar包都包含Manifest信息,这里描述了一些关于执行的依赖的包之类的内容,之后选择使用已存在的Manifest文件,manifest写法可参见http://www.cnblogs.com/lanxuezaipiao/p/3291641.html 。个人感觉这里的main-class不需要很精确,因为后面运行的时候我们通常都会写明我要的类是哪个,只要有主方法就可以运行)并填写如下信息:

```java

Manifest-Version: 1.0

Main-Class: HelloWorld

Class-Path: /lib/args4j-2.0.6.jar

//最后一行要保留,也就是说在最后一行要加回车

```

![](http://www.datalearner.com/resources/blog_images/62ff1e85-ac0d-4db2-b40b-f5486db2b9ff.png)

![](http://www.datalearner.com/resources/blog_images/3b1ec499-78f5-4572-ba3e-c615a4b86cf2.png)

第二步,右键项目名称,依次点击**“Export”--“Java”--“JAR file”--“Next”**;

第三步,勾选**Export generated class files and resources**;

第四步,在 **“Select the export destination:”**下面点击 **“Browse...”** 选择需要保存的目录及名称,这里我们选择d盘的根目录下。

![](http://www.datalearner.com/resources/blog_images/1e9c1fcf-11f6-444d-8312-52f4a1cf3330.png)

![](http://www.datalearner.com/resources/blog_images/5017c2a8-8be3-414d-b1ed-0bef9d163e8b.png)

第五步:点击**“Next”--“Next”**,选择**“Use existing mainfest from worspace”--“Browse...”**,选择我们第一步新建的文件即可,然后点击“Finish”;

![](http://www.datalearner.com/resources/blog_images/968c53f2-29d9-4a0d-9ab2-1b4997583c5b.png)

第六步:将工程里面的lib文件夹复制到D盘根目录下(jar文件依赖的外部包不能打包在jar文件中,所以要拷贝出来以便于访问,一般放在jar所在目录即可,这里就是在D盘根目录下);

![](http://www.datalearner.com/resources/blog_images/a08668b0-8290-413b-8857-09ee86a6d7c5.png)

第七步:使用cmd进入D盘后运行jar包即可,运行的格式是

java -classpath 包名 类名 -参数1 参数值。

下列案例中的-name表示该类有个输入参数为-name。

```java

java -classpath HI.jar main.HelloWorld -name Hello

```

如图所示,这里如果有其他主方法,把HelloWorld换掉即可,注意要写完整的包名:

![](http://www.datalearner.com/resources/blog_images/ee2253e6-2956-4023-b89f-0d2bafce6077.png)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值