Java工程打成jar包(此工程引用的jar包也打进去),并指定main方法执行该怎么做? 50
最近做了个java工程,引用了第三方架包,现在需要将此工程打成jar包,并指定main方法,也就是说,可以双击直接运行,该怎么做才可以?MANIFEST.MF文件需要手工...
最近做了个java工程,引用了第三方架包,现在需要将此工程打成jar包,并指定main方法,也就是说,可以双击直接运行,该怎么做才可以?MANIFEST.MF文件需要手工编辑吗?如果需要该怎么做?原工程中引用的架包也会一起打进去,也就是 jar in jar 这种情况需要额外处理吗?如果需要该怎么做?
展开
3个回答
2016-04-15 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
一、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,搞定。 ......
2
二、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
原作者:aparche
这时候打包就比较简单:
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,搞定。 ......
2
二、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
原作者:aparche
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.在eclipse中下载fatjar插件
2.使用fatjar进行打包,并在后续步骤中指定主函数
3.双击生存的jar即可运行
2.使用fatjar进行打包,并在后续步骤中指定主函数
3.双击生存的jar即可运行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询