欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

zzw原创_cmd下带jar包运行提示 “错误: 找不到或无法加载主类 ”

程序员文章站 2022-06-23 16:58:21
在windows下编译java,由于是临时测试一下文件,不想改classpath,就在命令行中用 -cp 或classpath引入jar包,用javac编译成功,便使用java带-cp 或classpath运行类是却失败,提示“找不到或无法加载主类”,我的java源文件没有包名。 H:\temp6\ ......

在windows下编译java,由于是临时测试一下文件,不想改classpath,就在命令行中用 -cp 或classpath引入jar包,用javac编译成功,便使用java带-cp 或classpath运行类是却失败,提示“找不到或无法加载主类”,我的java源文件没有包名。

h:\temp6\project\src>javac  -cp   dom4j-1.6.1.jar  xmltest.java

h:\temp6\project\src>
h:\temp6\project\src>java -classpath ./dom4j-1.6.1.jar    xmltest
错误: 找不到或无法加载主类 xmltest

h:\temp6\project\src>java -classpath  dom4j-1.6.1.jar    xmltest
错误: 找不到或无法加载主类 xmltest

在网上溜达了一圈没有找到答案,都说是classpath的问题,要在classpath中加上.; 看了一下我的电脑的环境变量

h:\temp6\project\src>set classpath
classpath=.;d:\jdk1.8.0_05\lib;d:\jdk1.8.0_05\lib\tools.jar 
明明有.;

再在图形界面上看,也是有.;,但是问题依旧存在。

zzw原创_cmd下带jar包运行提示 “错误: 找不到或无法加载主类 ”

 

,后来看到classpath,一个念头想到,难道是-classpath参数临时改变了系统参数?将命令行的系统变量限制在本行-classpath 后面的路径中? 于是参数改成这样
h:\temp6\project\src>java -classpath .;./dom4j-1.6.1.jar    xmltest     
-----------原xml内容------------
<?xml version="1.0" encoding="gbk"?>
<doc>
    <person>
        <name>周五</name>
        <address>
            <add id="a0001">

可以了!

# 也就是在-classpath 后面要加上.;, 原来,用了-classpath参数,则系统自身的classpath就不起作用了,所以用了-classpath参数,后面关联的包的路径、类的路径都要带上