如何制作并运行 jar 程序

以下是用 Intellij 制作 jar 程序,并运行的方法。

【1】新建工程,保持默认选项,Next

【2】保持默认选项,Next

【3】给工程命名,设置保存位置,Finish

【4】新建工程结束,进入开发界面

【5】展开工程树 Project->untitled,在 src 文件夹图标上右键,选中 New->Package

【6】设置包名,一般是三段格式,com.your.untitled

【7】在新建的包上再右键,选中 New->Java Class

【8】设置类名,一般就是 Main,OK 后将生成一个 Main.java 文件,这就是我们的程序文件

【9】打开新建的 Main.java,添加代码

public class Main {
    // main()
    public static void main(String[] args) throws ClassNotFoundException{
        String str1 = "Hello Java!";
        System.out.println(str1);
    }
}

【10】工具栏,File -> Project Structure

【11】在弹出的 Project Structure 对话框中,选中 Artifacts -> + -> JAR -> Empty

【12】按下图数字顺序,依次:1,设置编译输出文件名,这里仍设为 untitled,默认是 unnamed。2,点击按钮 Create Manifest...。3,在弹出的对话框中选中 src 目录。OK

【13】回到上一级对话框,继续按顺序执行:1,点击 Main Class 后面的按钮。2,在弹出的对话框中,选中 Project。3,选中 Main。4,OK。

【14】回到上一级对话框,点 + ,添加 Module Output

【15】在弹出的对话框中,选中 untitled,OK(注:这个对话框中还有一个 Class Path,本例留空,它是用来设置工程中引用到的库的路径的,本例从略)

【16】Artifacts 设置完成如下

【17】工具栏,Build -> Build Artifacts...

【18】继续选中 untitled -> Build

【19】Build 完成后,在窗口左下角有提示信息

【20】从文件管理器定位到编译输出目录:untitled -> out -> artifacts -> untitled,可以看到已经生成了【19】的编译结果 untitled.jar。然后新建一个 run.bat 文件,其内容如下:

@echo off
cd /d %~dp0
java -classpath untitled.jar com.your.untitled.Main
pause

【21】在文件管理器的路径栏,键入 cmd 并回车,以进入命令行控制台

【22】在 cmd 中,可见已自动定位到当前路径,这时键入 run 并回车,就可以执行【19】的编译结果 untitled.jar,并输出了【9】的代码中设定的输出  Hello Java!

结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/97634.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 Laf 一周内上线美术狮 AI 绘画小程序

“美术狮 AI 绘画”(以下简称“美术狮”),是我们小团队的一次尝试,定位是人人都可以上手的,充满创意的,理解中文和中国文化的图片生成工具。 在完善图像模型和论证核心问题之后,我们开始构建 MV…

CSS中的margin与padding

目录 一、margin 1.概念及作用 2.基本语法 3.margin的用法 二、padding 1.介绍 2.基本语法及要求 3. 用法 4.内边距和元素宽度 讲这些之前,先看一张图,便于理解 一、margin 1.概念及作用 CSS margin 属性用于在任何定义的边框之外,…

长胜证券:什么是创业板股票

创业板股票是指在我国股票市场上,以创新式、高技术、高成长性和高危险特征为首要标志的公司,经审核后在创业板上市的股票。那么,什么是创业板?创业板是中国证券监督管理委员会依据实际需求设立的一个专门服务于创新式、高成长性中…

QLabel控件使用

Qt为我们应用程序界面开发提供的一系列的控件,下面我们介绍两种最常用一些控件,所有控件的使用方法我们都可以通过帮助文档获取。 1.QLabel控件使用 QLabel是我们最常用的控件之一,其功能很强大,我们可以用来显示文本&#xff0c…

(一)SpringBoot 整合WebSocket 前端 uniapp 访问

第一次使用WebSocket,所以最需要一个及其简单的例子,跑通之后,增加自己对该技术的理解。(技术基础介绍就免掉了,后面再补) 案例逻辑:目前只有一个用户,而且是一个用户给服务器发送数…

C# textBox1.Text=““与textBox1.Clear()的区别

一、区别 textbox.Text "" 和 textbox.Clear() 都可以用于清空文本框的内容,但它们之间有一些细微的区别。 textbox.Text "": 这种方式会将文本框的 Text 属性直接设置为空字符串。这样会立即清除文本框的内容,并将文本框显示为空…

【Python小项目】Python的GUI库Tkinter实现随机点名工具或抽奖工具并封装成.exe可执行文件

一、项目背景 受朋友所托,帮他在公司年会活动上做一个点名抽奖的小工具。经过沟通后,他发给我一个人员名单表格,是xlsx格式的excel工作表,并大概设计了一下抽奖工具的界面以及相关要求。话不多说,马上开始项目流程。 二、需求分析 客户需求总结如下: UI界面设计如下:…

kafka原理与应用

架构图 Broker Kafka集群包含多个服务器,服务器节点称为BrokerBroker存储Topic数据 如果某topic有N个partition,集群有N个broker,那么每个broker存储该topic的一个partition。如果某topic有N个partition,集群有(NM)个broker&#…

深度学习优化入门:Momentum、RMSProp 和 Adam

目录 深度学习优化入门:Momentum、RMSProp 和 Adam 病态曲率 1牛顿法 2 Momentum:动量 3Adam 深度学习优化入门:Momentum、RMSProp 和 Adam 本文,我们讨论一个困扰神经网络训练的问题,病态曲率。 虽然局部极小值和鞍点会阻碍…

发布的策略

简介 应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。 长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发…

计算机网络(速率、宽带、吞吐量、时延、发送时延)

速率: 最重要的一个性能指标。 指的是数据的传送速率,也称为数据率 (data rate) 或比特率 (bit rate)。 单位:bit/s,或 kbit/s、Mbit/s、 Gbit/s 等。 例如 4 1010 bit/s 的数据率就记为 40 Gbit/s。 速率往往是指额定速率或…

Debian 30 周年,生日快乐!

导读近日是 Debian 日,也是由伊恩-默多克(Ian Murdock)创立的 Debian GNU/Linux 通用操作系统和社区支持的 Debian 项目 30 周年纪念日。 不管你信不信,从已故的伊恩-默多克于 1993 年 8 月 16 日宣布成立 Debian 项目&#xff0c…

【大数据毕设】基于Hadoop的招聘网站可视化的设计与实现(一)

博主介绍:✌全网粉丝6W,csdn特邀作者、博客专家、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于大数据技术领域和毕业项目实战✌ 🍅文末获取项目联系🍅 基于Hadoop的招聘网站可视化的设计与实现 摘要&#…

Android 使用模拟器模拟Linux操作系统

1. 简介 在Android手机上使用模拟器模拟ubuntu等操作系统,便于测试 2. 软件准备 Termux:是一款 Android 终端模拟器和 Linux 环境应用程序,无需 root 或设置即可直接运行。虽然酷安和谷歌菜市场都能下载,但这些渠道都很久没更新…

gitlab提交项目Log in with Access Token错误

目录 报错信息 问题描述 解决方案 报错信息 问题描述 在提交项目到gitlab时,需要添加账户信息 ,但是报了这样一个错,原因应该就是路径问题,我在填写server地址的时候,就出现了路径问题,我把多余的几个/…

.NetCore之log4net的使用

1.首先下载log4ne的包&#xff1a; 2.添加配置文件log4net.config <?xml version"1.0" encoding"utf-8" ?> <configuration><!-- This section contains the log4net configuration settings --><log4net><appender name&q…

qt设计界面

widget.h #ifndef WIDGET_H #define WIDGET_H //防止文件重复包含#include <QWidget> //QWidget类所在的头文件&#xff0c;父类头文件 #include<QIcon> #include<QPushButton> …

ClickHouse 使用

CREATE DATABASE test on cluster ck_00_1repl; DROP TABLE local_t_ordt_order on cluster ck_00_1repl; 创建本地 local 表 CREATE TABLE test.local_order_db_t_order on cluster ck_00_1repl ( forder_id_hash String, forder_id String, fuid Int32, forder_type Int32…

Android 蓝牙开发( 二 )

前言 上一篇文章给大家分享了Android蓝牙的基础知识和基础用法&#xff0c;不过上一篇都是一些零散碎片化的程序&#xff0c;这一篇给大家分享Android蓝牙开发实战项目的初步使用 效果演示 : Android蓝牙搜索&#xff0c;配对&#xff0c;连接&#xff0c;通信 Android蓝牙实…

git-tf clone 路径有空格处理方案

git-tf clone 路径存在空格情况下&#xff0c;运行命令报错&#xff1b; 需要对路径进行双引号处理