1.IntelliJ IDEA中的java项目生成jar包

IntelliJ IDEA中的java项目(比如:myproject),可以生成jar包。

本文以IntelliJ IDEA 2022.3 版本为例进行介绍,方法如下:

1. 依次选择菜单:File->Project Structure...,打开“Project Structure”界面。

2. 在打开界面的左侧列表中选择:Artifacts,点击右侧出现的+号。

3. 在出现的菜单中依次选择:JAR->From modules with dependencies...,

打开“Create JAR from Modules”界面。

4. 在Main Class输入框中输入main方法所在类的完整包名+类名,或者点击右侧的选择图标,直接选择。

5. 如果当前项目没有其他依赖的话,可以选择“JAR files from libraries”中的任意一项。

如果当前项目有外部jar包依赖的话,推荐选择“copy to the output directory and link via manifest”,

这样打包的jar包不包含所依赖的外部jar包。

6. “Directory for META-INF/MANIFEST.MF”中输入META-INF目录的路径,推荐项目根目录。

7. 点击“OK”按钮。

在出现的界面中可以看到“Output directory”输入框,可以修改这个路径,用来保存生成的jar包,一般保持默认即可。

然后选中“Include in project build”选项。点击“OK”按钮,完成配置。

8. 如果要生成jar包,可以依次选择菜单:Build->Build Artifacts...,打开“Build Artifacts”快捷菜单。

9. 然后依次选择菜单:myproject:jar->Build,就开始构建jar包了。

构建完成后,就可以到前面定义的保存路径中查看了。

2. 运行

Windows/linux

java -jar myproject.ja

3.错误与解决

3.1 错误1:Windows下运行jar包出错

E:\JAVA-ALL\PJT-sets\gen-segment-file\out\artifacts\gen_segment_file_jar>java -jar gen-segment-file.jar

Error: A JNI error has occurred, please check your installation and try again

Exception in thread "main" java.lang.UnsupportedClassVersionError: Main has been compiled by a more recent version of the Java Runtime (class file version 63.0), this version of the Java Runtime only recognizes class file versions up to 52.0

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(Unknown Source)

at java.security.SecureClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.access$100(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

E:\JAVA-ALL\PJT-sets\gen-segment-file\out\artifacts\gen_segment_file_jar>

解决:

需要安装匹配版本的jdk-1.8版本

File->Project Stucture->Project

3.2 Linux运行错误与解决

错误:

java -jar myproject.jar

-bash: java: command not found

解决:

安装Java运行环境:

>> yum -y list java*

Available Packages

java-1.5.0-gcj.x86_64 1.5.0.0-29.1.el6 base

java-1.5.0-gcj-devel.x86_64 1.5.0.0-29.1.el6 base

java-1.5.0-gcj-javadoc.x86_64 1.5.0.0-29.1.el6 base

java-1.5.0-gcj-src.x86_64 1.5.0.0-29.1.el6 base

java-1.6.0-openjdk.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base

java-1.6.0-openjdk-demo.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base

java-1.6.0-openjdk-devel.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base

java-1.6.0-openjdk-javadoc.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base

java-1.6.0-openjdk-src.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base

java-1.7.0-openjdk.x86_64 1:1.7.0.261-2.6.22.1.el6_10 updates

java-1.7.0-openjdk-demo.x86_64 1:1.7.0.261-2.6.22.1.el6_10 updates

java-1.7.0-openjdk-devel.x86_64 1:1.7.0.261-2.6.22.1.el6_10 updates

java-1.7.0-openjdk-javadoc.noarch 1:1.7.0.261-2.6.22.1.el6_10 updates

java-1.7.0-openjdk-src.x86_64 1:1.7.0.261-2.6.22.1.el6_10 updates

java-1.8.0-openjdk.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-debug.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-demo.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-demo-debug.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-devel.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-devel-debug.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-headless.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-headless-debug.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-javadoc.noarch 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-javadoc-debug.noarch 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-src.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-1.8.0-openjdk-src-debug.x86_64 1:1.8.0.272.b10-0.el6_10 updates

java-clearsilver.i686 0.10.5-16.el6 epel

java-dirq.noarch 1.4-1.el6 epel

java-dirq-javadoc.noarch 1.4-1.el6 epel

java-service-wrapper.x86_64 3.2.5-23.el6 epel

java-service-wrapper-javadoc.noarch 3.2.5-23.el6 epel

java-sleep.noarch 2.1-6.el6 epel

java-sleep-javadoc.noarch 2.1-6.el6 epel

java_cup.x86_64 1:0.10k-5.el6 base

java_cup-javadoc.x86_64 1:0.10k-5.el6 base

java_cup-manual.x86_64 1:0.10k-5.el6 base

javacc.x86_64 4.1-0.5.el6 base

javacc-demo.x86_64 4.1-0.5.el6 base

javacc-manual.x86_64 4.1-0.5.el6 base

javassist.noarch 3.9.0-6.el6 base

javassist-javadoc.noarch 3.9.0-6.el6 base

javastroke.x86_64 0.5.1-33.el6 epel

javatar.noarch 2.5-5.el6 epel

javatar-javadoc.noarch 2.5-5.el6

>> yum -y install java-1.8.0-openjdk*

或手动安装:

目录

准备工作

  • 版本说明

操作系统:CentOS 8.3

Java:JDK 17

  • 下载JDKOracle官方Java下载地址​www.oracle.com/java/technologies/downloads/

Java 17下载页面

以 x64 Compressed Archive 版本为例,获取到下载链接

下载链接:https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

登录CentOS服务器,使用 wget 命令下载JDK

## 若无wget命令,使用yum方式安装 yum install -y wget ## 查看wget版本,验证是否安装成功 wget --version ## 下载JDK wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

下载成功示意图

JDK 17 x64 Compressed Archive

成功下载到JDK安装包 jdk-17_linux-x64_bin.tar.gz

安装步骤

  • 将安装包解压缩到安装目录(以 /usr/local/java 目录为例)

## 进入安装目录 cd /usr/local/ ## 新建Java安装目录,并进入此目录 mkdir java cd java/ ## 将安装包解压缩到java目录(我的安装包下载到了/root目录下,注意自己的安装包下载位置) tar -zxvf /root/jdk-17_linux-x64_bin.tar.gz

解压后的JDK目录

## 进入目录 cd jdk-17.0.4.1/ ## 查看解压后的目录内容 ls

解压后的JDK目录内容

  • 配置环境变量

## 配置环境变量 vi /etc/profile

vi编辑器提示进入vi编辑器时为命令模式按 i 键进入编辑模式,此时可以修改文件内容按 Esc 键退出编辑模式,进入命令模式命令模式下输入 :wq 后按回车(Enter)键保存并退出

向 profile 文件中追加Java环境变量配置后保存

## set java environment JAVA_HOME=/usr/local/java/jdk-17.0.4.1 PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME PATH

使Java环境变量生效

## 重新加载profile source /etc/profile

验证Java环境

## 查看Java版本 java -version

查看Java版本

到此,Java环境安装完成;

重新运行程序:

>> java -jar gen-segment-file.jar

Hello world!

IntelliJ IDEA中生成jar包并运行相关推荐

  1. Intellij IDEA中生成jar包

    Intellij IDEA 为优秀的Java开发环境,但是有很多人知道利用此工具可以编译成class文件,而不知道如何在intellij IDEA工具如何将所有的class打包成jar文件,现在将方法 ...

  2. 不使用 Maven 等构建工具,而使用原始方法在 IntelliJ IDEA 中制作 JAR 包

    不使用 Maven 等构建工具,而使用原始方法在 IntelliJ IDEA 中制作 JAR 包 说明 步骤 说明 本文的 原始 Java 程序,指的是不使用项目构建工具(如 Maven)而建立起的一 ...

  3. 解决IntelliJ IDEA中导入jar包后无法使用的问题

    在使用IDEA进行Java开发时,有时候会碰到无法引用外部jar包的问题,或者导入的jar包无法引用其他jar包的问题(如Okhttp3 和 Okio),这是因为导入jar包方式有问题导致的. 首先在 ...

  4. IntelliJ IDEA生成jar包运行报Error:A JNI error has occurred,please check your installation and try again

    首先介绍一下IntelliJ IDEA生成jar包的方式: 1.打开项目,打开FIile->Project Structure...菜单.如下图: 选中Artifacts,点+号,选择JAR,再 ...

  5. java 单开程序_java生成jar包并且单进程运行的实例

    java文件打包jar运行 有效步骤: 1.cmd 到当前目录(默认包主类所在目录为例) set classpath = 默认包主类所在目录 2.javac 主类名.java 3.java 主类名 4 ...

  6. linux jar 运行 停止,[转] Linux中启动和停止jar包的运行

    脚本一: startTest.sh内容如下: #!/bin/sh java -jar Test.jar &       #注意:必须有&让其后台执行,否则没有pid生成 echo $! ...

  7. java生成jar包时使第三方jar_IEDA生成可运行jar包(包含第三方jar包)的方法

    最近现网需要处理一下数据,来适配一个场景.安排我来编写一个脚本来实现,由于步骤比较多,且需要调用其他服务接口,使用shell脚本来实现比较困难,所以想到了使用shell脚本调用java可执行jar包的 ...

  8. linux 目录中的文件和子目录生成jar包文件的方法

    linux 目录中的文件和子目录生成jar包文件的方法 jar cvf spark-libs.jar -C //usr/cwgis/app/spark/jars/ .//注意:.点前面有一个空格 [r ...

  9. 将Java程序打jar包并运行

    1)接着上篇博客继续说手动编译之后,将代码打成jar包,然后直接"java -jar lz.jar"运行不成功的问题.还是先上代码: 这个是Demo类: package org.l ...

最新文章

  1. 无门槛领取80本圣经级技术书籍!技术改变世界!
  2. 超级猩猩获 3.6 亿元 D 轮融资,计划今年新开100家门店
  3. android 修改编译内核源码 对抗反调试
  4. 中文幽默语料库构建与计算项目(幽默等级识别,幽默类型识别,隐喻类型识别,隐喻情绪识别)
  5. 定时备份mysql数据库压缩文件
  6. ROS笔记(26) Movelt!
  7. slice python_Python slice()
  8. MT4 服务器信号,手机实时接收MT4软件指标信号(简单几步设置搞定)
  9. 发那科机器人tp文件转成文本_fanuc_机器人中文简易教材.pdf
  10. STM32F4 之STM32CubeMx编程学习
  11. 几何画板椭圆九种画法_椭圆的画法几何画板的动画演示
  12. Linux安装/升级/卸载pip3
  13. 关于QQ游戏大厅的架构我也想说几句
  14. linux 写镜像工具下载,镜像写入工具下载
  15. 比较全的一个项目(PC端)
  16. Python Tricks : Function Argument Unpacking
  17. win10打开telnet客户端
  18. 在python中replace是什么意思_python中replace的用法是什么?
  19. java干嘛_java是什么(Java到底能干嘛?)
  20. [Other]来做一个微信打印机吧 -- 微信打印的设计思路參考

热门文章

  1. 怎样安装tensorflow?
  2. 棋牌游戏用户流失预测——Xgboost调参
  3. 抠图软件哪个最好用?这三款亲测简单、有效、功能强
  4. 才二十来岁,你就挺着个大肚子?
  5. js 每隔2秒循环调用
  6. C语言智能实验室预约系统
  7. 2022金属非金属矿山安全检查(露天矿山)考试模拟100题及模拟考试
  8. LAN8720A PHY初始化注意事项
  9. Ubuntu 16.04LTS(Xenial Xerus)离线安装docker
  10. 加解密工具RSATool的使用