有关bat文件运行jar包出现的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有关bat文件运行jar包出现的问题相关的知识,希望对你有一定的参考价值。

,为什么会出现这个情况??急救啊
jar包中已经有mete-inf,并且里面Manifest-Version: 1.0Main-Class: app.ExeApp,已经指向含有main类,该程序在不打包,不通过点击bat运行,直接在eclipse中运行时可以的,但导出jar包(jar包中我看了下有其他的jar文件),但有加载什么成功什么的就看不来,也行也出现上面问题
。jar包多导入进去的,我参考以前别人做的差不多的一个小程序也是这些jar包,并且是可以运行的,但我这个不行。 加载???要导入的jar包在程序jar中,但不一定加载进去吗?但我查了下程序中有一个".lasspath"文件,里面对应的jar包都存在地址的。诶,真不知道什么原因啊

加上 -cp的参数。把你依赖的第三方jar包(比如你现在少的hibernate的)放到某个路径,然后运行参数如下:

java -cp $path:$path/lib/*:app9Service.jar xxx(这个是包含main方法的全类名)追问

$path:$path/lib/*:?? 这个两个path到时都要写具体地址? 比如我吧hibernate3.jar放在f盘ftpdoc文件夹中的lib文件夹中,那么在dos中直接进到ftpdoc文件夹中,然后用java -cp $path:$path/lib/*/:app9service.jar app.Exeapp(这个是main方法所在的类),不过执行不行啊

追答

path是你的环境变量啊。
按照你的路径,应该是:
java -cp $path;f://ftpdoc/lib/*:app9service.jar app.Exeapp

试试看

参考技术A 在window下bat批处理文件调用实现java方法。
代码如下:

@echo off

echo 正在加密,请稍后....
echo path:%~dp0

set base=%~dp0

set class=%base%\bin
set libs=%base%\lib

set class_path=%class%;%libs%\c3p0-0.9.1.2.jar;%libs%\mysql-connector-java-5.0.8-bin.jar;

java -classpath %class_path% com.test.Main
@pause

classes目录是java编译后的class目录

libs目录存放的所要使用到的jar

startNet.bat启动的bat文件
参考技术B 应该是jar的包没有全部加载进去

使用bat文件启动jar包(自带jre)

一、需求

jar包导出后运行的话一般是打开命令行窗口运行 jar -jar xxx.jar 这个其实是很不方便的。在windows上其实是可以写一个bat脚本去运行jar包的,并且拷贝一个jre环境的话客户的电脑就不需要安装jdk了。

二、步骤

1.编写一个startup.bat文件,内容如下 (app.jar为jar的名称,也可以为别的)

start jre/bin/javaw -jar app.jar

2.准备好jre和可执行的jar(jar打包时已指定好main方法的类),把将startup.bat放到同一个文件夹下

以上是关于有关bat文件运行jar包出现的问题的主要内容,如果未能解决你的问题,请参考以下文章

使用bat文件启动jar包(自带jre)

使用bat文件启动jar包(自带jre)

bat文件运行jar包

.bat批处理文件怎么写语句来运行.jar文件

为啥我打开我java的jar包会出现这样的错误?

编写bat(批处理文件)的优势