JAVA -jar命令如何指定classpath

众所周知,如果采用Java -classpath,可以允许用户指定其他的Jar包或者class文件的位置。

比如java  -classpath lib/*.jar  ABC.class

但是如果采用了-jar参数,-classpath的功能就会被屏蔽。java的加载器会旨在指定的jar文件里面寻找需要的类。比如

java  -classpath lib/*.jar   -jar ABCD.jar,我们的本意是要运行ABCD.jar文件里面的main函数类,而且这个类依赖lib目录下的那些jar文件,着用的结果就会导致类似下面的错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/poi/ss/usermodel/Workbook


无论你怎么设置classpath,都不会work。





要配置 Java 环境以便使用 `java -jar` 命令运行 JAR 文件,需确保系统中已正确安装并配置了 Java 运行环境(JRE 或 JDK),以下是具体步骤: ### 安装 Java 运行环境 1. 从 [Oracle 官网](https://www.oracle.com/java/technologies/javase-jdk11-downloads.html) 或其他可信源下载适合当前操作系统的 JDK 或 JRE 安装包。 2. 安装下载的 Java 包。建议选择 JDK,因为它包含了完整的开发工具和运行时环境。 ### 配置环境变量 #### Windows 系统 1. 打开“控制面板” > “系统和安全” > “系统” > “高级系统设置”。 2. 在“系统属性”窗口中点击“环境变量”按钮。 3. 在“系统变量”区域中: - 创建或编辑 `JAVA_HOME` 变量,其值应为 JDK 的安装路径,例如:`C:\Program Files\Java\jdk-17`。 - 编辑 `Path` 变量,添加 `%JAVA_HOME%\bin` 以确保可以在命令行中访问 Java 工具。 4. 点击“确定”保存更改。 #### Linux 或 macOS 系统 1. 打开终端。 2. 编辑 shell 配置文件,如 `.bashrc`、`.zshrc` 等,添加以下内容: ```shell export JAVA_HOME=/usr/lib/jvm/jdk-17 export PATH=$JAVA_HOME/bin:$PATH ``` 3. 保存文件后执行 `source ~/.bashrc` 或 `source ~/.zshrc` 使配置生效。 ### 验证安装 打开命令行工具,输入以下命令验证 Java 是否安装成功: ```shell java -version ``` 如果显示 Java 版本信息,则表示安装和配置成功。 ### 使用 java -jar 命令运行 JAR 文件 确保目标 JAR 文件是可执行的,即在构建时已指定主类(Main-Class)[^3]。若 JAR 文件已具备此属性,可在命令行中直接运行: ```shell java -jar yourfile.jar ``` ### 注意事项 - 如果遇到闪退问题,尝试在命令行下执行 `javaw -jar filename.jar` [^2]。 - 对于可执行 JAR,在运行 `java -jar` 选项时,环境变量 `CLASSPATH` 和在命令行中指定的所有类路径都将被 JVM 忽略 [^3]。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值