• IDEA导出可执行jar包


    1. IDEA 导出可执行的Jar

    换了Idea后今天需要把项目打成 jar放到服务器上运行,稍微整理一下。

    在IDEA的菜单中选择File–>Project Structure,如下图所示:

    这里写图片描述

    选择“Artifacts“在出现的图中点击加号

    这里写图片描述

    在如下的图形中需要注意两个地方:

    这里写图片描述

    1) 需要选择jar包默认运行的入口类
    2) 需要设置MANIFEST.MF的位置,在选择好入口类后系统会将MANIFEST.MF默认放在src/main/java下,需要将其放在/src/main/resources下

    点击确认后,我们可以看一下MANIFEST.MF中内容

    Manifest-Version: 1.0
    Main-Class: com.test.MAIN
    • 1
    • 2

    到这里还没有结束,继续点击Build–>Build Artifacts

    这里写图片描述

    继续如下的操作

    这里写图片描述

    上述步骤后,你会在相应工程的目录下看到一个名称为out的文件夹。其中可以找到对应的jar文件,比如本次的mqproducer.jar

    将生成的jar包拷贝到需要的地方,使用如下运行即可:

    java -jar mqproducer.jar
    • 1

    如果入口类需要参数只需要在命令后面加参数以空格分割即可,如:

    java -jar mqproducer.jar args0 args1 args2
    • 1

    2. 常见问题

    本地执行java -jar出现下面的错误

    Error: Invalid or corrupt jarfile xxx.jar
    • 1

    通常的原因在于xxx.jar文件过大,建议在pom.xml文件中排除不必要的依赖

    备注:Jar文件在传输过程中损坏也会导致该错误[vServer Linux - Start jar: Invalid or corrupt jarfile

    ](https://stackoverflow.com/questions/32299659/vserver-linux-start-jar-invalid-or-corrupt-jarfile)

    (function () {('pre.prettyprint code').each(function () { var lines = (this).text().split( ).length;varnumbering = $('
      ').addClass('pre-numbering').hide(); (this).addClass(hasnumbering).parent().append(numbering); for (i = 1; i
      <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
            </dependency>
    欢迎关注我的公众号:小秋的博客 CSDN博客:https://blog.csdn.net/xiaoqiu_cr github:https://github.com/crr121 联系邮箱:rongchen633@gmail.com 有什么问题可以给我留言噢~
  • 相关阅读:
    51Nod-1013 3的幂的和【快速模幂+逆元】
    51Nod-1082 与7无关的数【进制+打表】
    51Nod-1080 两个数的平方和【暴力法】
    51Nod-1015 水仙花数【进制+查表搜索】
    51Nod-1003 阶乘后面0的数量【分析思维】
    51Nod-1002 数塔取数问题【DP】
    51Nod-1179 最大的最大公约数【暴力】
    51Nod-1018 排序【排序】
    51Nod-1126 求递推序列的第N项【递推序列+模除】
    51Nod-1031 骨牌覆盖【递推】
  • 原文地址:https://www.cnblogs.com/flyingcr/p/10326935.html
Copyright © 2020-2023  润新知