IntelliJ IDEA导出Java 可执行Jar包
extends:http://blog.sina.com.cn/s/blog_3fe961ae0102uy42.html
保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下面步骤:
打开File -> Project Structure -> Artifacts,如下图
点击“+”,选择“Jar”,选择Empty或From modules with dependencies,后者会把在项目中用到的Jar包解压开,当成项目的一部分,打包到最后的Jar包中。但是这样会有一个问题,即,如果项目中引用的Jar包有签名过,最后打包成的Jar包运行时会抛出错误:
“java.lang.SecurityException: Invalid signature file digest for Manifest main attributes”
因此,笔者选择的是Empty,然后在“Output Layout”中,把自己要打包的文件、文件夹添加进去。对于外部引用的包,笔者全部放在lib目录下,因此,在Class Path中,把依赖的jar包添加进去,例如:
lib/javax.servlet-3.0.0.v201112011016.jar lib/jetty-all-9.1.5.v20140505.jar lib/json-simple-1.1.1.jar
设置好Main Class,这就不用多说了。
点击OK。
回到IDEA,选择Build -> Build Artifacts,成功生成Jar包。生成的Jar包位于上图设置的Output directory。
使用命令java -jar xxxxx.jar来执行jar包。
以上。
IntelliJ IDEA导出Java 可执行Jar包的更多相关文章
- IntelliJ IDEA导出Java 可执行Jar包
原文:IntelliJ IDEA导出Java 可执行Jar包 保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下面步骤: 打开File -> Project Stru ...
- eclipse生成【带有外部jar包】的java可执行jar包
之前有写过一篇使用eclipse生成java可执行jar包,但是最近的一次使用中无论如何都不成功,当双击执行打成的jar时,弹出如下错误: could not find the main class: ...
- SpringBoot小技巧:修改java可执行jar包内容
SpringBoot小技巧:修改java可执行jar包内容 情景描述 在生产环境中,有时候我们发现了个小bug,开发迅速修改代码后,很多时候我们不得不重新发布一个新的可执行jar包上去替换掉.但是这样 ...
- eclipse将javaSE项目导出成可执行jar包
将第三方包和项目打包到一块 step1:选中要导出的项目,右键选择Export step2:选择java/Runable JAR file step3:选择main主程序,选择第三方包打包的形式,推荐 ...
- 运行java可执行jar包
导出与导入:如果要用别的项目的类, 把对方类export出成jar包(多个类的集合),然后复制到自己项目路径下然后添加至构建路径,jar包右键buildpath/addtobuildpath.expo ...
- java命令执行jar包的方式
http://www.cnblogs.com/adolfmc/archive/2012/10/07/2713562.html 大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有 ...
- 【Eclipse】Eclipse如何导出java项目为jar包
1.首先确定要导出的项目 从项目结构可以看出,笔者的项目是一个Dynamic Java Project.com/db下面有一个config的数据库配置文件.WEB-INF/lib文件夹下面有依赖的ja ...
- java -cp 执行jar包里的某个类
当我们需要测试某个功能时,需要在linux环境下执行某个类的main方法来测试 可以使用java -cp xxx.jar com.MyClass来执行某个类 java -cp test.jar:lib ...
- idea打包java可执行jar包
1,在项目上鼠标右键 --> Open Module Settings 2, Artifacts --> + --> JAR --> From modules with dep ...
随机推荐
- 在Android中,px,dp,dip,sp的不同之处
最近在学习Android开发,一直没有弄清楚px,dp,dip,sp的区别.今天正好有时间,就花时间研究了一下. 众所周知,Android厂商非常多,各种尺寸的Android手机 ...
- 如何用BarTender将日期变量和序列号变量放一起打印成条码?
刚接触BarTender 2016的小伙伴们可能对条码的数据源还不太搞的定,例如有时需要将日期变量和序列号变量放一起打印成条码,那如何简单达到目的呢?下面,小编教大家解决这一问题的三大步骤. 1.在B ...
- QT基础:QT 定时器学习
定时器在编程中经常要用到,有必要学习一下,记记笔记! Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类. 1.QObject中的定时器的使用,需要用 ...
- 查询SQL阻塞语句
SELECT SPID=p.spid, DBName = convert(CHAR(),d.name), ProgramName = program_name, LoginName = convert ...
- python登录网易163邮箱,爬取邮件
from common import MyRequests,LoggerUntil,handle_exception myRequests.update_headers({ 'Accept':'tex ...
- redis配置文件相关
1. 默认情况下,redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes daemonize no 2. 当Redis在后台运行时,Redis默认会把pid写入/var/run/red ...
- struts2 第一次使用 404 页面引发的一系列问题
环境:ubuntu . eclipse.struts-2.3.24 问题描写叙述: 1. struts2 訪问出现404 2. 严重: Exception starting filter Str ...
- Java动态调用类中方法
在Java中,调用类的方法有两种方式:对于静态方法可以直接使用类名调用,对于非静态方法必须使用类的对象调用.反射机制提供了比较另类的调用方式,可以根据需要指定要调用的方法,而不必在编程时确定.调用的方 ...
- 双调旅行商问题 (Bitonic TSP)
问题描写叙述: 上述问题能够使用动态规划的方法来解决. 以下是解决思路的详细介绍: 1. 最优子结构: 如果d[i][j]表示从起点1出发到达i及j两个顶点的最短路程之和. 为此能够如果K为此段路程上 ...
- CentOS6.8_64位手动安装MySQL5.6
1.在CentOS6.8上安装mysql5.6 2.下载编译包 wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linu ...