java项目打jar包的两种情况
链接地址:http://jingyan.baidu.com/article/6b97984d8a6ddc1ca2b0bfa0.html
本文介绍一下java项目打jar包时的两种情况各怎么操作

方法/步骤
一、java项目没有导入第三方jar包
这时候打包就比较简单:
1. 首先在Eclipse中打开项目, 右键点击项目,选择“Export”;2. 选择Java/JAR file,Next;3. Select the resources to export中可以选择你想要包含的项目文件夹,一些不必要的文件夹就无需放进去了,免得增大空间;这里有几个选项: * Export generated class files and resources 表示只导出生成的.class文件和其他资源文件 * Export all output folders for checked projects 表示导出选中项目的所有文件夹 * Export java source file and resouces 表示导出的jar包中将包含你的源代码*.java,如果你不想泄漏源代码,那么就不要选这项了 * Export refactorings for checked projects 把一些重构的信息文件也包含进去在Select the export destination中选择导出的jar的路径,Next4. 下一页可以选择是否导出那些含有警告warning或者错误errors的*.class文件。一般不用理他,Next5. 下一个页面里可以对项目做一些配置。(如果项目没有引入第三方jar包,这项我们采用系统默认的选项就OK,Main class一定要设置成为你项目的那个主方法入口类) * Generate the manifest file是系统帮我们自动生成MANIFEST.MF文件,如果你的项目没有引用其他class-path,那可以选择这一项。 * Use existing mainfest from workspace。这是可以选择我们自定义的.MF文件,格式如上所写。 * Seal content。要封装整个jar或者指定的包packet * Main class。这里可以选择你的程序入口,将来打包出来的jar就是你这个入口类的执行结果。最后Finish,搞定。 ......
二、java项目有导入第三方Jar包(例如项目中有导入sqlserver2005.jar包)
这时候打包就相对复杂一点:
前面的4步和上面的情况是一样,只是第5步需要选择Use existing mainfest from workspace选项,并选择你自己创建的一个MANIFEST.MF文件,因为系统默认选择的是Generate the manifest file选项,而该选项不会将项目用到得第三方jar包打入到java项目生成的jar包中去。
自定义配置文件MANIFEST.MF :
首先在项目的根目录下创建一个MANIFEST.MF文件
接下来用记事本打开该文件,并编辑:
例如:Manifest-Version: 1.0Main-Class: StudentManager_TestClass-Path: sqlserver2005.jar其中的Manifest-Version是指程序的版本号,Main-Class是指程序的主方法入口类,slass-Path就指定了外来jar包的位置。请注意假设我们的项目打包后为project.jar,那么按照上面的定义,应该在 project.jar的同层目录下有相关的jar包(即sqlserver2005.jar,如果有引入多个第三方jar包,则可以用空格隔开)放在里面。否则将会出现Exception in thread "main" java.lang.NoClassDefFoundError的错误。
END
java项目打jar包的两种情况的更多相关文章
- 【IDEA】向IntelliJ IDEA创建的项目导入Jar包的两种方式
转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 今天用IDEA,需要导入一个Jar包,因为以前都是用eclipse的,所以对这个id ...
- java打jar包和运行jar包的两种方式
java打jar包和运行jar包的两种方式更详细的打包方式请参考https://www.cnblogs.com/mq0036/p/8566427.html 一.java类不依赖第三方jar包以简单的一 ...
- java项目打成jar包时引用了第三方jar,此时我们该如何解决呢
Web项目做多了,反而对单纯的java项目陌生了,今天我们在开发项目的过程中,碰到一个这样的需求:需要将java项目放到linux系统上跑起来,当然这个javaSE项目是带main方法的.我们知道在I ...
- Maven使用本地jar包(两种方式)
有些项目会用到一些Maven库上没有的jar包,这就需要我们自己引入了 这种情况有两种办法: 第一种方式,在pom文件中引用时使用本地路径: 首先把jar包放到项目中: 然后在pom文件中引入: &l ...
- 安装第三方jar包的两种方式
由于部分第三放jar包没有放到maven中央仓库,而项目中又依赖了这些jar包,那么如何安装?我实践了两种,特做记录. 一.安装到 nexus 私有库: 在 3rd party 仓库下有个 Artif ...
- eclipse将引用了第三方jar包的java项目打成jar包
今天用java开发了一个项目,想要打成jar包,并在linux环境下运行.但是运行时引用的第三方jar包却显示classNotFind错误. 于是查了一下解决办法,在此贴出来,方便以后查阅. 用Ecl ...
- java项目打jar包
首先 在工程中,右键项目,有个export,选择JAR File,就能导出jar包. 一.java项目没有导入第三方jar包 1. 首先在Eclipse中打开项目, 右键点击项目,选择“Export” ...
- java 项目打jar包,用cmd运行,并且编写运行脚本
项目是ideal编辑器的springboot项目的demo.打包就是在侧边栏,点击packge ,就会在target下生成jar包. 生成之后把 jar包放在一个文件夹中.新建一个txt文件,在txt ...
- java项目打成jar包使用
使用Eclipse打成jar包 1.创建项目hello 2.写java文件 package hell; import java.io.PrintStream; public class Hello { ...
随机推荐
- 在 Linux RedHatEL6 环境下安装配置 JDK1.7 + Tomcat7.0 + MySQL5.6
RedHatEL6 JDK安装路径: /usr/java/jdk1.7 Tomcat安装路径:/usr/local/tomcat7/ MySQL安装路径: /usr/local/mysql 总共分为以 ...
- Lua学习笔记5:类及继承的实现
-- Lua中类的实现 -------------------------------- 基类 ---------------------------- classBase = {x = 0,y = ...
- html相关介绍
HTML(超文本标记语言) 超文本标记语言,即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言 XHTML1.0 可扩展超文本置标语言(eXtensi ...
- Oracle语句优化规则(二)
21. 用EXISTS替换DISTINCT 当提交一个包含一对多表信息(比如部门表和雇员表)的查询时,避免在SELECT子句中使用DISTINCT. 一般可以考虑用EXIST替换 例如: ...
- Xamarin.Android开发实践(二)
原文:Xamarin.Android开发实践(二) 一.准备 开始学习本教程前必须先完成该教程http://www.cnblogs.com/yaozhenfa/p/xamarin_android_qu ...
- CMake 简单介绍
CMake特点 CMake需要用户用CMake规范的语法编写CMake脚本,该语法简单易用,入门极其顺手 原生支持 C/C++/Fortran/Java 的相依性的自动分析功能,免除了程序员对代码依赖 ...
- Python3 官方文档翻译 - 4.7 函数定义
4.7.1 默认函数定义 最常用的就是为一个或多个参数设定默认值,这让函数可以用比定义时更少的参数来调用,例如: def ask_ok(prompt, retries=4, complaint='Ye ...
- unity3d大型手游 可以打包obb文件
用unity3d开发手游,有个很大的问题就是apk的size太大, 如果超过50M,一般很多平台就不会肯上线. 一个好的方法是把app打成apk + obb数据包的方式. 1. 编译成obb数据包的方 ...
- CMarkUp接口说明
CMarkup是一个小型XML的分析器,实现语言是C++,英文版的接口说明地址为:http://www.firstobject.com/dn_markupmethods.htm 有厉害的网友已经翻译出 ...
- C#学习之在辅助线程中修改UI控件----invoke方法
Invoke and BeginInvoke 转载地址:http://www.cnblogs.com/worldreason/archive/2008/06/09/1216127.html 在Invo ...