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包的更多相关文章

  1. IntelliJ IDEA导出Java 可执行Jar包

    原文:IntelliJ IDEA导出Java 可执行Jar包 保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下面步骤: 打开File -> Project Stru ...

  2. eclipse生成【带有外部jar包】的java可执行jar包

    之前有写过一篇使用eclipse生成java可执行jar包,但是最近的一次使用中无论如何都不成功,当双击执行打成的jar时,弹出如下错误: could not find the main class: ...

  3. SpringBoot小技巧:修改java可执行jar包内容

    SpringBoot小技巧:修改java可执行jar包内容 情景描述 在生产环境中,有时候我们发现了个小bug,开发迅速修改代码后,很多时候我们不得不重新发布一个新的可执行jar包上去替换掉.但是这样 ...

  4. eclipse将javaSE项目导出成可执行jar包

    将第三方包和项目打包到一块 step1:选中要导出的项目,右键选择Export step2:选择java/Runable JAR file step3:选择main主程序,选择第三方包打包的形式,推荐 ...

  5. 运行java可执行jar包

    导出与导入:如果要用别的项目的类, 把对方类export出成jar包(多个类的集合),然后复制到自己项目路径下然后添加至构建路径,jar包右键buildpath/addtobuildpath.expo ...

  6. java命令执行jar包的方式

    http://www.cnblogs.com/adolfmc/archive/2012/10/07/2713562.html 大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有 ...

  7. 【Eclipse】Eclipse如何导出java项目为jar包

    1.首先确定要导出的项目 从项目结构可以看出,笔者的项目是一个Dynamic Java Project.com/db下面有一个config的数据库配置文件.WEB-INF/lib文件夹下面有依赖的ja ...

  8. java -cp 执行jar包里的某个类

    当我们需要测试某个功能时,需要在linux环境下执行某个类的main方法来测试 可以使用java -cp xxx.jar com.MyClass来执行某个类 java -cp test.jar:lib ...

  9. idea打包java可执行jar包

    1,在项目上鼠标右键 --> Open Module Settings 2, Artifacts --> + --> JAR --> From modules with dep ...

随机推荐

  1. linux echo命令提示权限不够的解决办法

    该文章转载于此:http://blog.csdn.net/u010780613/article/details/51491237 问题描述:      在使用Ubuntu系统的时候,遇到这样的一个问题 ...

  2. Java实习生面试题整理

    一.数据类型 包装类型 八个基本类型: boolean/1 byte/8 char/16 short/16 int/32 float/32 long/64 double/64 基本类型都有对应的包装类 ...

  3. 代码记录——phase16,block36(修正后)

    加入边缘判定,<2则加2. if (x_upleft<2) x_upleft=x_upleft+2; if (y_upleft<2) y_upleft=y_upleft+2; HRE ...

  4. 英文版Ubuntu18.10安装搜狗输入法过程(图文并茂,亲自尝试!)

    英文版Ubuntu18.10安装搜狗输入法过程 过程比较艰辛,折腾了好长的时间,不过最终还是装好了,特记录一下! 首先去搜狗输入法网址下载Linux版本:https://pinyin.sogou.co ...

  5. 织梦Dedecms系统可疑文件include/filter.inc.php扫描出漏洞,该如何解决?

    今天在做网站监察的时候,发现网站出了一个问题,在对网站做木马监测的时候,扫描出一个可疑文件:/include/filter.inc.php,建议删除,但仔细检查后,发现此文件是织梦(Dedecms)系 ...

  6. JQ 使用toggle实现DIV的隐藏和显示

    $('.submenuA').toggle( function () { $(this).next('div').show(); }, function () { $(this).next('div' ...

  7. Faulty Odometer(九进制数)

    Faulty Odometer Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9301   Accepted: 5759 D ...

  8. 关于Android打版本号的小白文

    尽管常常和android打交道.但事实上我对android不是非常了解. 这里记录一下ant编译androidproject的过程,然后顺便记录一下android的一些基本概念.不求渡人,但求渡己.这 ...

  9. 取值为[1,n-1]含n个元素的整数数组,至少存在一个重复数,即可能存在多个重复数,O(n)时间内找出其中任意一个重复数,不使用额外存储空间。

    有一种非常诡异的算法,就是采用类似于单链表是否存在环的问题.“判断单链表是否存在环”是一个非常经典的问题,同时单链表可以采用数组实现,此时每个元素值作为next指针指向下一个元素.本题可以转换化为“已 ...

  10. BugHD 与你的应用一起成长

    BugHD 新增功能 1.新增安装量.启动量的统计功能 BugHD SDK 1.3.0新增安装量.启动量的统计功能,在崩溃分析页面右上角可看到安装量和启动量. BugHD 体验优化 1.Android ...