找不到或无法加载主类


1、遇到问题:在windows下用编写了很简单的一段java代码,用命令行运行始终出现问题:找不到或无法加载主类.

2、百度一般都说是环境变量出了问题,结果环境变量配置没有问题,之前对环境变量的配置一直不明白(我现在是菜鸟),路遇一文章,写的简单明了,如下:

转自   http://wenku.baidu.com/link?url=X-ENHqG4DNytl2mmsPkqEYQbEKbzcd3D12zAACHKPQHuDMVxh79t7WSQh2CeGqZdQ1YzOzJdlMZ8b8Zx1VXXJcb6RmhD7vueqtsSwpFhkTe

     

 摘抄部分内容:

/**********************************************************************************************************


                                           2.1  jdk的默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下

                                           2.2 环境变量配置为 

                                                PATH=.;%JAVA_HOME%\bin 

                                               CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

                                                JAVA_HOME=C:\Program Files\Java\jdk1.7.0  

                2.3 为什么这样设置变量

                                           

                                           以下为置JAVA_HOME,CLASSPATH,PATH的目的:  

                                           2.3.1设置JAVA_HOME:  

                                           一、为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.7.0目录里,则设置JAVA_HOME为该  

                                                目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的  路径串;  

                                           二、归一原则, 当你JDK路径被迫改变的时候, 你仅需更改JAVA_HOME的变量值即可, 否则,你就要更改任  
                                                 何用绝对路径引用JDK目录的文档, 要是万一你没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!  
                                           三、第三方软件会引用约定好的JAVA_HOME变量, 不然, 你将不能正常使用该软件, 以后用JAVA久了就会知道, 要是某个软件不能正常使                                               用, 不妨想想是不是这个问题.  
                                         2.3.2设置CLASSPATH:  
                                             这是一个很有趣,当然也比较折磨初学者的问题, 这个变量设置的目的是为了程序能找到相应的".class"文件, 不妨举个例子: 你编译一个                                                 JAVA程序---A.java, 会得到一个A.class的类文件,你在当前目录下执行java A, 将会得到相应的结果(前提是你已经设置CLASSPATH                                                为"."). 现在, 你把A.class移到别的目录下(例如:"e:\"), 执行java A, 将会有
                                            NoClassDefFindError的异常,原因就是找不到.class文件, 现在你把CLASSPATH增加为:".;e:\"再在任何目录下运行java A, 看看会有什                                           么结果~~:)~~~, 一切正常, java命令通过,CLASSPATH找到了.class文件!   

                                        2.3.3设置PATH:  

                                           道理很简单, 你想在任何时候都使用%JAVA_HOME%\bin\java 等来执行java命令吗, 当然不会, 于是, 你  
                                           可以选择把%JAVA_HOME%\bin添加到PATH路径下, 这样, 我们在任何路径下就可以仅用java来执行命令了  
.                                          (当你在命令提示符窗口输入你个代码时,操作系统会在当前目录和PATH变量目录里查找相应的应用程序,   
                                          并且执行.)  

/**********************************************************************************************************************

3.代码如下:

package java1;
/**
* Description:
* <br/>Copyright (c),2005-2008,yeeku.H.Lee
* <br/>This program is protected by copyright
* <br/>Program Name:
* <br/>Date:
*/

public class TestJavadoc
{
  /**
  *简单测试属性
  */
  protected String name;
  /**
  *主方法,程序的入口
  */
  public static void main(String[] args)
   {
    System.out.println("Hello World!");
  }
}

文件所在路径:D:\javaforstu\java1

查找文档原来是编译运行错误:正确格式为:编译D:\javaforstu>javac  java1\TestJavadoc.java

                                                       运行D:\javaforstu>java  java1.TestJavadoc

                                                       结果成功!

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM