在Eclipse中将Java项目打包为jar
2023-09-27 14:24:59 时间
如果自己的java project中需要引用额外的jar包作为资源文件,那么需要自己自定义配置文件MANIFEST.MF ,内容示例如下:Manifest-Version: 1.0Class-Path: lib/crimson.jar lib/jbcl.jar lib/junit.jar lib/log4j-1.2.13.jar lib/mysql-connector-java-3.1.13-
如果自己的java project中需要引用额外的jar包作为资源文件,那么需要自己自定义配置文件MANIFEST.MF ,内容示例如下:
Manifest-Version: 1.0
Class-Path: lib/crimson.jar lib/jbcl.jar lib/junit.jar lib/log4j-1.2.13.jar lib/mysql-connector-java-3.1.13-bin.jar
Main-Class: src.YourMainClassName
其中的Class-Paht就指定了外来jar包的位置。请注意假设我们的项目打包后为project.jar,那么按照上面的定义,应该在 project.jar的同层目录下建立一个lib文件夹,并将相关的jar包放在里面。否则将会出现Exception in thread "main" java.lang.NoClassDefFoundError的错误。
最后介绍一下使用Eclipse制作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的路径,Next
4. 下一页可以选择是否导出那些含有警告warning或者错误errors的*.class文件。一般不用理他,Next
5. 下一个页面里可以对项目做一些配置。
* Generate the manifest file是系统帮我们自动生成MANIFEST.MF文件,如果你的项目没有引用其他class-path,那可以选择这一项。
* Use existing mainfest from workspace。这是可以选择我们自定义的.MF文件,格式如上所写。
* Seal content。要封装整个jar或者指定的包packet
* Main class。这里可以选择你的程序入口,将来打包出来的jar就是你这个入口类的执行结果。
最后Finish,搞定。
配置eclipse查看引入jar包的源码 当我们引入jar包后想查看其中的一些方法的时候: 出现:the source attachment does not contain 的问题的时候。 原因我想大概一般是jar包里的都是.class文件,是编译后的文件,我们若想要查看其.java 文件,就需要进行相应的配置,让eclipse能反编译它并且查看。 配置过程如下:
Eclipse_插件_05_自动下载jar包源码插件 一、Java Source Attacher 官网:http://marketplace.eclipse.org/content/java-source-attacher#.U5RmTePp0QI CSDN下载:http://download.
如果自己的java project中需要引用额外的jar包作为资源文件,那么需要自己自定义配置文件MANIFEST.MF ,内容示例如下:
Manifest-Version: 1.0
Class-Path: lib/crimson.jar lib/jbcl.jar lib/junit.jar lib/log4j-1.2.13.jar lib/mysql-connector-java-3.1.13-bin.jar
Main-Class: src.YourMainClassName
其中的Class-Paht就指定了外来jar包的位置。请注意假设我们的项目打包后为project.jar,那么按照上面的定义,应该在 project.jar的同层目录下建立一个lib文件夹,并将相关的jar包放在里面。否则将会出现Exception in thread "main" java.lang.NoClassDefFoundError的错误。
最后介绍一下使用Eclipse制作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的路径,Next
4. 下一页可以选择是否导出那些含有警告warning或者错误errors的*.class文件。一般不用理他,Next
5. 下一个页面里可以对项目做一些配置。
* Generate the manifest file是系统帮我们自动生成MANIFEST.MF文件,如果你的项目没有引用其他class-path,那可以选择这一项。
* Use existing mainfest from workspace。这是可以选择我们自定义的.MF文件,格式如上所写。
* Seal content。要封装整个jar或者指定的包packet
* Main class。这里可以选择你的程序入口,将来打包出来的jar就是你这个入口类的执行结果。
最后Finish,搞定。
配置eclipse查看引入jar包的源码 当我们引入jar包后想查看其中的一些方法的时候: 出现:the source attachment does not contain 的问题的时候。 原因我想大概一般是jar包里的都是.class文件,是编译后的文件,我们若想要查看其.java 文件,就需要进行相应的配置,让eclipse能反编译它并且查看。 配置过程如下:
Eclipse_插件_05_自动下载jar包源码插件 一、Java Source Attacher 官网:http://marketplace.eclipse.org/content/java-source-attacher#.U5RmTePp0QI CSDN下载:http://download.
相关文章
- 教你如何在Spark Scala/Java应用中调用Python脚本
- Java jar打包成exe应用程序(超详细)
- Java如何快速修改Jar包里的文件内容
- JAVA覆写Request过滤XSS跨站脚本攻击
- linux java 和jmeter 环境变量配置文件笔记(原)
- IDEA编译时出现 Information:java: javacTask: 源发行版 1.8 需要目标发行版 1.8
- 深入理解Jvm--Java静态分配和动态分配完全解析
- 基于 OAuth 安全协议的 Java 应用编程
- java打jar包的几种方式详解
- idea 将java导出为可执行jar及导入jar依赖
- Java Token登录验证 使用jjwt生成和解析JWT
- 比较war包在Linux或windows服务器上启动及使用 java -jar xxx.jar 或nohup java -jar xxx.jar启动在Linux服务器上的spring boot jar
- 如何用jar命令对java工程进行打包
- java NIO 学习笔记
- java:javac、java、jar命令的区别
- 关于 调用 JNI JAR java 的说明和注意事项,调用第 靠写不下了
- Delphi XE7的安卓程序如何调用JAVA的JAR,使用JAVA的类?
- Java或者JAR包获取读取资源文件的路径的问题总结
- 【华为OD机试真题 Java】喊7的次数重排
- java聊天室控制台实现
- Jar包冲突及java.lang.NoSuchMethodError异常解决方案