zoukankan      html  css  js  c++  java
  • IDEA生成可执行的jar文件

    场景

    用IDEA开发一个Java控制台程序,项目完成后,打包给客户使用。

    做法

    首先用IDEA打开要生成jar的项目,打开后选择File->Project Structure...

    选择Artifects选项再点击+号

    选择JAR,再选择From modules with dependencies...,来新增一个Artifect

    弹出对话框让我们配置这个Artifect

    • Main Class 选择程序入口类,也就是main方法所在的类
    • Directory for META-INF/MANIFEST.MF,选择入口类所在的src目录

    设置完后点击OK

    如果想要将资源文件(图片,音频,视频,二进制文件等)打包到jar中。在Output Layout标签卡下,点击+,选择Directory Content

    选择你想打包的文件所在的文件夹,这里我选择assets

    这样子做之后,如果直接打包会把assets目录下的文件和文件夹打包进jar,不会把assets目录本身打包进jar,如果想连同assets目录打包进jar,那么继续。

    在我们刚添加的项右键,点击Surround With...

    选择Directory

    创建一个文件夹将它包裹起来。

    包裹起来后,点击OK回到IDEA主界面

    最后,点击Build->Build Artifacts...

    弹出一个对话框,点击Build,生成jar文件

    生成的jar文件在工程目录下的classes/artifacts/<工程名>_jar下找到

    java -jar命令尝试运行生成的jar,没有问题。说明生成成功

    我们查看jar里面的文件结构,也符合预期。

    读取资源

    在java代码中,如果要读取资源,可以通过<ClassName>.class.getClassLoader().getResourceAsStream(path);这种方式得到一个资源文件的InputStream。

    上面的getResourceAsStream方法,path参数要传进去资源的相对路径,比如在jar中的assets目录下有个sound.mp3的文件,那么就写getResourceAsStream("assets/sound.mp3")

  • 相关阅读:
    Codeforces Round #136 (Div. 1) B. Little Elephant and Array
    洛谷 P2966 [USACO09DEC]牛收费路径Cow Toll Paths
    cogs 969. [NOIP2006] 数列
    防止xss(跨站脚本攻击)
    ☀【插件】iScroll
    ☀【移动优化】
    ☀【Zepto】
    ☀【JS】Code
    ☀【响应式设计】屏幕尺寸
    CODEVS——T2744 养鱼喂妹纸
  • 原文地址:https://www.cnblogs.com/luoyesiqiu/p/10859887.html
Copyright © 2011-2022 走看看