Java Package:找不到或無法加載主類


CoreJava第十章

在cmd中通過javac SimpleFrameTest.java和java SimpleFrameTest時出現問題:

找不到或無法加載主類。

原因並不在classpath的配置上,而是源碼的目錄不對。

CoreJava:

運行javac命令時對目錄要求不高,可以在其他地方編譯,將產生的.class文件粘貼在BASE/simpleFrame下,並在BASE這層文件夾下運行java simple.SimpleFrameTest

但是最好按上面說的,place source files into a subdirectiory that matches the full package name。

參考:http://blog.csdn.net/changtianshuiyue/article/details/6200791

在Eclipse中,項目同名主類直接放在src目錄下,其他package必須每一個.java文件的主類與其文件名一致,並且package name與文件夾一致。

如下圖:

SimpleFrameTest.java:

Ex05.java

 

 

 

package simpleFrame;

import java.awt.*;
import javax.swing.*;

/**
 * @version 1.33 2015-05-12
 * @author Cay Horstmann
 */
public class SimpleFrameTest
{
   public static void main(String[] args)
   {
      EventQueue.invokeLater(() ->
         {
            SimpleFrame frame = new SimpleFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
         });
   }
}

class SimpleFrame extends JFrame
{
   private static final int DEFAULT_WIDTH = 300;
   private static final int DEFAULT_HEIGHT = 200;

   public SimpleFrame()
   {
      setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
   }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM