`
dengbaoleng
  • 浏览: 1134820 次
文章分类
社区版块
存档分类
最新评论

java -jar 使用注意事项

 
阅读更多
如果单个jar文件,没有引用到其他jar文件,而且指定了Main-Class,可以这样运行:
java -jar hello.jar
如果执行的jar文件引用了其他jar文件,该怎么办?
这里hello.jar里面用到Log4j的Log
java -cp log4j-1.2.14.jar -jar hello.jar
这个想当然可以执行,实际上执行会出现ClassNotFoundException的
因为使用了 -jar 选项,环境变量 CLASSPATH 和在命令行中指定的所有类路径都被 JVM 所忽略

正确运行方式如下:
1、
java -cp lib\log4j-1.2.14.jar;hello.jar com.dhn.Hello (com.dhn.Hello为主类)
在windows下多个jar之间以分号(;)隔开,最后还需要指定运行jar文件中的完整的主类名
2、
java -jar hello.jar
但是需要修改hello.jar中的MANIFEST.MF,通过MANIFEST.MF中的Class-Path 来指定运行时需要用到的其他jar,
其他jar可以是当前路径也可以是当前路径下的子目录。多个jar文件之间以空格隔开
以下面的MANIFEST.MF文件为例
Manifest-Version: 1.0
Main-Class: com.ibm.portalnews.entrance.Main
Class-Path: lib\commons-collections-3.2.jar lib\commons-configuration-1.5.jar lib\commons-lang-2.3.jar lib\commons-logging.jar lib\dom4j-1.6.1.jar lib\jaxen-1.1-beta-7.jar lib\jdom.jar lib\log4j-1.2.14.jar

其中Manifest-Version表示版本号,一般由IDE工具(如eclipse)自动生成
Main-Class 是jar文件的主类,程序的入口
Class-Path 指定需要的jar,多个jar必须要在一行上,多个jar之间以空格隔开,如果引用的jar在当前目录的子目录下,windows下使用\来分割,linux下用/分割
文件的冒号后面必须要空一个空格,否则会出错
文件的最后一行必须是一个回车换行符,否则也会出错
分享到:
评论

相关推荐

    绿盾解密无需申请审批,绿盾加密文件解密的工具,使用java -jar fileDecrypt-1.0.1.jar 需要解密的文件

    使用方法:java -jar fileDecrypt-1.0.1.jar <文件路径|文件夹路径> 然后源文件或源文件夹会在同级文件夹下生成一个 temp2023010101 的临时文件夹 原理:利用加密文件在绿盾环境电脑上可以正常打开。既然软件能直接...

    mysql-connector-java-8.0.16.jar驱动和注意事项.zip

    mysql-connector-java-8.0.16.jar驱动和连接过程中产生的问题 详细请看https://blog.csdn.net/hpu2022/article/details/104128037

    java程序双击运行-双击jar文件运行程序.pdf

    3、注意事项 1)⽆论使⽤Win7还是WinXP操作系统,都需要提前安装Java虚拟机(JVM)。 2)jar是Java可执⾏程序,其打包格式使⽤zip格式压缩打包,因此有可能会被某些压缩软件当成压缩包打开,如果双击时使⽤压缩软件打开...

    CS4390-FileTransferProject:一个简单的服务器和客户端,用于传输文件。 为UT Dallas的CS4390制造

    文件传输服务器/客户端 对于CS4390:计算机网络 我知道这太糟糕了。 请不要判断我。 用法 Usage: java -jar FileTransferProject.jar --server ...注意事项 它可能不起作用。 我不建议运行它。 严重的是,不要这样做。

    java-decompiler:JAD 的快速而肮脏的 UI(只是另一个反编译器)

    java -Xmx100m -jar decompiler.jar或者双击或运行 run.bat 或者双击 decompiler.jar一般注意事项您可以从单个目录中选择多个文件,或者选择一个目录,应用程序将递归反编译其中的所有 *.class 文件。 在所有情况下...

    java8源码-back-end-java-server:spring启动后端服务器

    java8 源码 IT侠预约系统后端服务 与back-end-controller中的node层一起使用, 使用node做权限验证和反向代理,java服务器只在服务器本地启动,不考虑权限问题 ...注意事项 因为没有考虑权限验证的问题,只是由no

    JAVA2048小游戏源码.zip

    一、源码介绍 JAVA2048小游戏,运行java -jar命令启动jar包。 二、主要功能 鼠标点击数字+上下左右箭头移动。 三、注意事项 开发环境为eclipse,数据库为无

    encryption-java-source-code:java加密解密源代码

    注意事项1. window和linux环境均已测试通过启动类不能加密通过idea工具中的jar,可以反编译,命令如下java -cp“ java-decompiler.jar” org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs = ...

    JAVA2048小游戏源码 JAVA2048XYX.rar

    JAVA2048小游戏源码 源码描述: 一、源码介绍 JAVA2048小游戏,运行java -jar命令启动jar包。 二、主要功能 鼠标点击数字+上下左右箭头移动。 三、注意事项 开发环境为eclipse,数据库为无

    springboot仿百度网盘开发的在线云盘项目

    使用springboot开发的在线云盘项目,用户可以上传视频,音乐,文档,图片等媒体文件,其中视频和音乐可以在线预览(MP4视频格式...注意事项(可选) 1.springboot项目,直接运行PanApplication.java即可 2.也可以通过mave

    Java开发小demo 向qq、网易用户发送邮件

    注意事项 如果你发送邮件的邮箱帐户,设置了独立密码或授权码,那么上面设置密码的地方,就需要设置为独立密码或授权码,否则鉴权不会通过 测试的邮件主题和内容也需要注意,否则会被认为是垃圾邮件,而被屏蔽。

    java源码生成jar包-dataloader:顶点数据加载器

    及更高版本的注意事项 Data Loader v45 及更高版本使用 JDK 11 构建,需要 64 位操作系统。 在安装 Data Loader 之前安装 JRE 11 或更高版本。 请参阅进一步的说明以通过脚本进行安装。 Data Loader v44 是使用 ...

    桌面

    你如何使用它?目前仅在Windows开发并测试:被监测机器初始化启动... y = 20启动程序目标机java -jar desktop-0.0.1.jar服务器监控机java -jar desktop-0.0.1.jar客户端注意事项关闭程序如果是命令行启动不要直接切命

    web在线翻译程序--可当java接口使用

    项目描述 web在线翻译--调用python程序获取结果 python程序爬取的有道接口 运行环境 jdk8+tomcat9+IntelliJ IDEA+Jpython环境 项目技术(必填) ...spring+spring mvc+bootstrap+jquery+网络...运行截图(必填)注意事项

    使用freemarker生成word文档,源代码+jar包+说明文档及注意事项

    资料附有Java源代码和自己总结的使用说明及注意事项 大至预览如下: 1、用word编辑好模板 普通字符串替换为 ${string} 表格循环用标签 姓名:${user.userName} , 性别:${user.sex} 2、将word模板另存为xml...

    疯狂Java讲义第二版配套光盘源码

    三、注意事项 (1) 代码中有大量代码需要连接数据库,读者应修改数据库URL以及用户名、密码, 让这些代码与读者运行环境一致。如果项目下有SQL脚本,则导入SQL脚本即可;如果 没有SQL脚本,系统将在运行时自动...

    JTX-Timeline-Maker

    #JTX时间轴制作工具 这是JTX Timeline Maker的1.0版,旨在促进项目时间表的构建。 根据VLC播放列表文件(.xspf) ,其作用是为片段编号并在每个片段之间... ###使用注意事项 应该没有错误,但是肯定会发生,因此最好检

    onebot-kotlin:OneBot标准的Kotlin实现及mirai插件-原cqhttp-mirai

    按照以下配置修改的注释修改保存再次启动相关客户端 OneBot Kotlin-CQHTTP Mirai嵌入式Kotlin实现(原cqhttp-mirai-embedded)注意事项此版本内置mirai-core和mirai-console请编制版本Jar包放至与mirai-console-...

    疯狂java光盘内容

    三、注意事项 (1) 代码中有大量代码需要连接数据库,读者应修改数据库URL以及用户名、密码, 让这些代码与读者运行环境一致。如果项目下有SQL脚本,则导入SQL脚本即可;如果 没有SQL脚本,系统将在运行时自动...

    video-test:使用带有 processing-deps 和 maven 的视频库的示例项目

    从目标目录运行项目java -jar video-test.jar 注意事项pom 中视频库的导入对应于通过 processing-deps 安装的内容: <dependency> <groupId>org.processing</groupId> <artifactId>processing-video</artifactId> ...

Global site tag (gtag.js) - Google Analytics