Java程序不在bin目录外执行并编译

时间:2014-01-28 21:20:03

标签: java path classpath java-7 illegalargumentexception

我将java的版本从jdk6更新为java7但是我遇到一个严重的问题,每当我执行bin目录之外的任何java文件时它都会显示class not found。而在bin目录中它会执行但是我已经包含了classpath和path.javac编译java文件和java类也存在于同一目录中,但java无法执行类file.i搜索它得到类似java -cp的东西。 classfilename,但它也失败了说非法参数cp.please帮助。 here is the image 这是我的java文件

     <pre>    
      import java.awt.*;
      import java.awt.event.*;
      import javax.swing.*;
      import java.io.*;

      public class MotionDetector extends JFrame 
      {
          // GUI components
       private MotionPanel motionPanel;


         public MotionDetector()
          {
         super("Motion Detector");

            Container c = getContentPane();
            c.setLayout( new BorderLayout() );   

            motionPanel = new MotionPanel(); // the sequence of pictures appear here
            c.add( motionPanel, BorderLayout.CENTER);

           addWindowListener( new WindowAdapter() {
           public void windowClosing(WindowEvent e)
          { motionPanel.closeDown();    // stop snapping pics
            System.exit(0);
           }
          });
         setResizable(false);
             pack();  
         setLocationRelativeTo(null);
           setVisible(true);
         }
         public static void main( String args[] )
            {  new MotionDetector();  }
          }

C:\ MotionDetection&gt; javac MotionDetector.java

C:\ MotionDetection&gt; java MotionDetector
找不到类MotionDetector

2 个答案:

答案 0 :(得分:0)

MotionDetector包含哪些内容?如果它不在默认包中,则必须从包含该包的目录中调用它。例如,如果它位于包MotionDetection中,那么您必须从C:\运行它,如下所示:java MotionDetection.MotionDetector

答案 1 :(得分:0)

只需检查bin目录中的hello程序。如果它在bin中运行,则类路径中存在问题。所以现在通过设置set path=your path(没有分号)在bin之外检查它。如果它在设置路径后运行。请检查您是否在enviornment变量中设置了bin文件夹路径。

如果设置仍然出现错误,则检查已设置的环境变量下的路径中的所有路径。现在你会发现一条旧路径也适合你的新路径。更改该路径或删除。

始终记住Windows从左侧检查路径。如果你用分号设置路径,如果左边有任何旧路径,则从左侧获取旧路径。

现在你得到了什么是实际问题