eclipse中将项目打包成jar,并启动

2023-11-14

第一种:利用eclipse中自带的export功能

第一种方法分两种情况先来看第一种情况:没有引用外部jar的项目打包

步骤一:右键点击项目选择导出(export),选择java>jar文件(不是选择可运行jar文件)在这里插入图片描述
在这里插入图片描述
步骤二:选择你要导出的项目以及文件,指定文件导出路径。连续点击两个下一步后到第四步在这里插入图片描述
步骤三:选择主类。在这里插入图片描述
最后Finish,即生成了我们要的jar文件。

第二种情况:引用了外部jar的项目打包

当我们引用了外部jar后,使用eclipse自带的export打包略显繁琐。

步骤一:准备主清单文件 “ MAINFEST.MF ”,放在项目的文件夹下面。

MAINFEST.MF是jar的配置文件,第一行定义版本,第二行指出外部jar的路径,第三行是主类指示,第四行是空行。

Manifest-Version: 1.0
Class-Path: lib/commons-codec.jar lib/commons-httpclient-3.1.jar lib/commons-logging-1.1.jar lib/log4j-1.2.16.jar lib/jackson-all-1.8.5.jar
Main-Class: main.KillCheatFans```

这里要注意几点:

1、Class-Path: 和Main-Class: 后边都有一个空格,必须加上,否则会打包失败,错误提示为:Invalid header field;

2、假设我们的项目打包后为KillCheatFans.jar,那么按照上面的定义,应该在 KillCheatFans.jar的同层目录下建立一个lib文件夹(即lib文件和打包的jar文件 在同一个目录下),并将相关的jar包放在里面。否则将会出现“Exception in thread “main” java.lang.NoClassDefFoundError”的错误; 3、Main-Class后面是类的全地址,比如你的主文件是KillCheatFans.java,文件里打包为package com.main; 那么这里就写com.main.KillCheatFans, 不要加.java后缀,主文件地址写错将会出现“找不到或无法加载主类”的错误;

4、写完Main-Class后一定要回车(即最后一行是空白行),让光标到下一行,这样你生成的jar包才能找到你的主class去运行,

否则将会出现“jar中没有主清单属性”的错误。

打包后敲入cmd,在dos命令窗口敲入java -jar xxxx.jar(你的jar包名.jar),然后回车运行就可以(先进入你存放jar文件的地方)

java -jar test.jar

在这里插入图片描述

这样 jar包的打包和运行就完成了,那么如何创建bat文件呢,在同路径下创建一个文本,内输入

java -jar test.jar
pause(不加pause会闪退)
这里还是和上面一样 java -jar xxxx.jar(你的jar包名.jar)

然后保存文件,把文件后缀修改为.bat(右键,重命名,把txt修改为bat)
在这里插入图片描述
这样的话,双击就可以跟刚才cmd中输入的效果一样啦!

最后就是配置为开机自己运行

还是同目录下创建一个文本,内输入

createobject(“wscript.shell”).run"xxxx.bat",0
xxxx.bat是你bat文件的名字,0是设置不开启dos窗口

然后把文件后缀修改为vbs,修改方式和上面bat同理

改好以后,生成一个run.vbs的快捷方式(右键 s),把快捷方式放入启动目录

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

复制进去的时候会报权限请求,不用担心点击确定就可以。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

eclipse中将项目打包成jar,并启动 的相关文章

  • 如何编写 Maven 构建脚本来执行 Java

    如何在构建过程中或构建刚刚完成后执行 Java 程序 可以直接从 pom 中执行此操作吗 mvn exec java Dexec mainClass org sonatype mavenbook weather Main EDIT 假设我想
  • 从 Android 函数更新 Textview

    有人可以告诉我如何从函数更新 Android Textview 控件吗 我在互联网上进行了深入搜索 看到很多人都问同样的问题 我测试了线程但无法工作 有人有一个简单的工作示例吗 例如 调用一个函数 在循环中运行多次 并且该函数在 TextV
  • 在 Eclipse 中删除空块之前的新行

    我更喜欢奥尔曼式 http en wikipedia org wiki Brace style Allman style大括号 例如 if foo magical prancing unicorn stuff 而不是 if foo unma
  • Eclipse Oxygen - 项目消失

    为什么项目会从 Oxygen 的项目资源管理器中消失 启动 Eclipse 后我可以短暂地看到它们 但随后它们就消失了 无法重新添加或导入它们 因为它表示它们已经存在 我将项目从 git 重新克隆到另一个目录中 删除了 classpath
  • log4j.properties 在 Wildfly 上无法正常工作

    我的类路径中有一个 log4j properties 文件 它位于 APP XX jar log4j properties 位置 我注意到在ear文件中我还可以在lib文件夹中找到log4j 1 2 17 jar 但无论我在 log4j p
  • 如何避免Eclipse在将类名放在注释中时导入类,以便checkstyle稍后不会抱怨?

    有时我将类名放在方法或类的注释中只是为了引用 但是 Eclipse 会自动执行导入并在文件中留下导入语句 这会导致稍后出现 未使用的导入 检查样式错误 当我在注释中输入类名时 是否可以更改一些配置以避免 Eclipse 自动导入 人们不同意
  • 升级eclipse后Groovy失败

    最近升级到 Eclipse 2020 12 4 18 0 从那以后 Groovy 就不再工作了 升级了 Groovy 没有任何改进 现在正在运行 展开所有 已安装的内容 树 Eclipse Groovy 开发工具 org codehaus
  • Eclipse 在 Android SDK 内容加载器处挂起

    我已经在 OS X 10 8 2 上使用 Eclipse 4 2 Juno 版本 20120920 0800 几个星期了 为 Android 3 0 及更高版本构建应用程序 我有一台带 SSD 的四核 i7 MacBook Pro 因此性能
  • java:如何设置全局线程ID?

    是否有可能为线程设置唯一ID 在分布式系统中 线程是在许多不同的机器上创建的 例如通过 RMI 我需要它来创建日志消息 根据我的研究 我知道可以使用 log4j mdc ndc 来完成 但只能在单线程中完成 我的问题是 在创建线程时必须设置
  • 需要 Java 源文件的依赖树

    我需要从大型遗留 Java 代码库中提取一些特定功能 以便将其转换为独立的命令行应用程序 这段代码根本没有文档记录 并且不是很模块化 甚至不是很清晰 所以我很难弄清楚我需要保留什么 基本上我需要的是一棵依赖关系树 列出了这个 java 文件
  • log4j:ERROR 在 tomcat 7 中部署 war 时无法创建自定义 Appender

    我的 log4j xml 中有以下标签
  • 将项目导入 Eclipse 后出现“必须重写超类方法”错误

    任何时候我必须将我的项目重新导入到 Eclipse 中 如果我重新安装了 Eclipse 或者更改了项目的位置 几乎全部我的重写方法的格式不正确 导致错误 该方法必须重写超类方法 值得注意的是 无论出于何种原因 Android 项目中方法参
  • 从 Eclipse Java 编辑器中获取选定的文本

    我正在开发一个 Eclipse 插件 按下按钮后 该插件会在 Java 编辑器中获取选定的文本 并将其放入出现的文本框中 我的代码如下所示 我从这里得到它 http dev eclipse org newslists news eclips
  • 覆盖hadoop中的log4j.properties

    如何覆盖hadoop中的默认log4j properties 如果我设置 hadoop root logger WARN console 它不会在控制台上打印日志 而我想要的是它不应该在日志文件中打印 INFO 我在 jar 中添加了一个
  • 我的本地 Eclipse 可以在 Docker 容器中安装 Access 库吗?

    我有一个用于 Django 开发的 Docker 映像 通过一些 xauthority 文件机制 我在容器内使用 Eclipse 在大多数情况下 Eclipse 运行良好 但存在一些棘手的问题 这些问题似乎与它在容器内运行的事实有关 毕竟
  • 记录时何时出现致命错误?

    在 log4j 和 log4net 等日志框架中 您可以记录各种级别的信息 大多数级别都有明显的意图 例如 调试 日志与 错误 日志是什么 然而 我一直害怕的一件事是将我的日志记录归类为 致命 哪种类型的错误如此严重以至于应被归类为致命错误
  • 如何在log4j的配置文件中为文件附加器提供环境变量路径

    我有一个log4j xml配置文件 和一个RollingFileAppender我需要提供用于存储日志的文件路径 问题是我的代码将作为可运行的 jar 部署在 Unix 机器上 所以如果我传递这样的参数 value logs message
  • Eclipse CDT Headless 构建在构建完成后挂起

    我正在为我们的嵌入式应用程序实现一个持续集成服务器 该应用程序是使用 GNU ARM 工具链和 GNU ARM ECLIPSE 插件构建的 因此 我需要从服务器上的命令行编译我们的 CDT 项目 我想编译 Debug Release 和 U
  • Eclipse tomcat启动失败

    我在 Windows 7 x64 位 上运行 Eclipse Indigo 3 7 当我使用 Mongrel 一个用于运行 Tomcat 的 Eclipse 插件 启动 Tomcat 7 0 12 时 日食 我得到 May 24 2012
  • 如何使用 JasperReports (6.*) 解决 LinkageError?

    例如我们有 net sf jasperreports engine JRException Caused by net sf jasperreports engine fill JRExpressionEvalException Error

随机推荐

  • 在Windows Server 2016 Hyper-V中开启嵌套虚拟化(NestedVM)

    早期如果我们想做Hyper V功能测试 例如Hyper V Cluster或者Hyper V Replica时至少使用两台物理机器实现 作为大众屌丝没那么多钱购买机器怎么办 嵌套虚拟化 嵌套虚拟化 顾名思义 即在虚拟机中运行虚拟机 该技术最
  • 微信小程序开发--uniapp

    uniapp介绍 什么是uniapp uniapp是一个使用Vue js开发所有前端应用的框架 开发者编写一套代码 可发布到iOS Android H5 以及各种小程序 微信 支付宝 百度 头条 QQ 钉钉 淘宝 快应用等多个平台 截止20
  • 破解selenium封禁--去哪儿酒店爬虫

    使用selenium遇到封禁 selenium是我用来破解一些js渲染比较多的页面的神器 但是最近 在抓取一些网站时 遇到了让人头皮发麻的事情 selenium出问题了 在测试去哪儿酒店时 遇到了加载不出数据的问题 如下图 去哪儿会一直很努
  • linux配置nginx下载包安装的方式

    0 先卸载nginx 使用yum来卸载 yum remove nginx 查询所有nginx相关文件 逐一删除 whereis nginx rm rf 文件名或目录 1 安装编译环境 yum y install make zlib zlib
  • MQTT 连接优化指南

    博主猫头虎 带您 Go to New World 博客首页 猫头虎的博客 面试题大全专栏 文章图文并茂 生动形象 简单易学 欢迎大家来踩踩 IDEA开发秘籍专栏 学会IDEA常用操作 工作效率翻倍 100天精通Golang 基础入门篇 学会
  • 华为OD机试 - 数组去重和排序(Java)

    题目描述 给定一个乱序的数组 删除所有的重复元素 使得每个元素只出现一次 并且按照出现的次数从高到低进行排序 相同出现次数按照第一次出现顺序进行先后排序 输入描述 一个数组 输出描述 去重排序后的数组 用例 输入 1 3 3 3 2 4 4
  • redis-缓存架构-问题列表(四)

    1 缓存架构 高并发 高可用 解决方案 问题 1 如何让redis集群支撑几十万QPS高并发 99 99 高可用 TB级海量数据 企业级数据备份与恢复 redis企业级集群架构 2 如何支撑高性能以及高并发到极致 同时给缓存架构最后的安全保
  • Java如何将字符串放进字符串数组中(亲测)

    String str1 aaa String str2 bbb String str3 ccc List
  • oracle报错文件损坏,oracle 控制文件损坏处理

    一 故障模拟 控制文件损坏 发现关闭不了 强制关闭 故障恢复 发现已经执行到mont阶段 因为这个不依靠控制文件 进入整段日志 cd u01 app oracle diag rdbms orcl orcl trace 查看alert orc
  • Idea开启Run DashBoard配置

    找到 idea文件下的workspace xml 并找到RunDashboard
  • LeetCode:二叉搜索树的属性、修改与构造(12道经典题目)

    LeetCode 二叉搜索树的属性 修改与构造 12道经典题目 本文带来与二叉搜索树的属性 修改与构造有关的经典题目 主要实现是C 700 二叉搜索树中的搜索 98 验证二叉搜索树 530 二叉搜索树的最小绝对差 501 二叉搜索树中的众数
  • Java_Could not find resource SqlMapConfig.xml

    目录结构如图 解决办法 选中目录config 右键build path gt use as source folder
  • Linux中如何设置静态IP

    1 打开虚拟机编辑 gt 虚拟网络编辑器 选择VMnet8 设置子网IP 子网掩码 网关 点击确定 2 按照以下标注修改网卡的配置文件 gt 重启网络 gt 查询IP root centos7 vim etc sysconfig netwo
  • ECCO首家全球旗舰店在上海正式开业;海立马瑞利全球总部启动运营;西门子医疗完成收购瓦里安

    一周企业资讯看点 ECCO首家全球旗舰店正式开业 海立马瑞利全球总部启动运营 赛诺菲中国首个全球研究院落成启用 西门子医疗完成收购瓦里安 温德姆酒店集团计划今年大中华区新开超过100家酒店 Club Med丽江度假村预计将于今年秋天开业 三
  • Windows下在虚拟机VMware中安装Ubuntu 18.04(一个安装了很多次Ubuntu的详细步骤和经验,避免踩不必要的坑)

    我安装了ubuntu很多次 以前在网上学习了很多版本的安装步骤 以前经验不足 出现了很多问题 比如说 学习过程中出现内存或磁盘不足 而且有时候无法扩展或扩展很麻烦 这很浪费时间和降低学习效率 甚至Ubuntu有时会很卡 启动慢 我觉得最严重
  • ag-grid基本配置

    columnDefs headerName 序号 必填 显示在表头的文本 width 50 宽度 minWidth 300 最小宽度 多数情况是在自适应时 设置使用 maxWidth 300 最大宽度 多数情况是在自适应时 设置使用 cel
  • 设计模式(一) 工厂方法模式

    介绍 关于设计模式 大家可能已经有很多了解了 因此这里直接开始吧 首先来介绍一下工厂方法模式 它是一种创建型模式 在设计模式 可复用面向对象软件的基础中对工厂方法由如下的解释 工厂方法模式的实质是 定义一个创建对象的接口 但让实现这个接口的
  • Intellij IDEA中使用Protobuf的正确姿势

    1 proto文件语法高亮显示 需要安装Protobuf Support插件 依次点击Intellij中的 File gt Settings gt Plugins gt Browse repositories 如下所示 输入Protobuf
  • eclipse中将项目打包成jar,并启动

    第一种 利用eclipse中自带的export功能 第一种方法分两种情况先来看第一种情况 没有引用外部jar的项目打包 步骤一 右键点击项目选择导出 export 选择java gt jar文件 不是选择可运行jar文件 步骤二 选择你要导