簡體   English   中英

無法從src \\ test文件夾“運行文件” - >找不到主要類或無法加載主類

[英]Cannot “Run File” from src\test folder -> main class not found or could not be loaded

我只想在我的測試文件夾中運行一個.java文件進行調試和測試。 如果我在我的主文件夾中運行它,一切都很好,如果我在我的測試文件夾中運行它,我收到一個錯誤:

我的項目結構:

src
|_____ main
      |_____ java -> MainSrc.java
|_____ test
      |_____ java -> MainTest.java

MainSrc / MainTest.java包含:

public class MainSrc / MainTest
{
    public static void main(String[] args)
    {
        System.out.println("test");
    }
}

現在,如果我右鍵單擊並在netbeans中同時點擊“運行文件”:

主\\ java的\\ MainSrc.java

run:
test
BUILD SUCCESSFUL (total time: 0 seconds)

測試\\ java的\\ MainTest.java

cd C:\Java\MainTest; "JAVA_HOME=C:\\Program Files (x86)\\Java\\jdk1.7.0_02" 
"\"C:\\Program Files\\NetBeans 7.2\\java\\maven\\bin\\mvn.bat\"" 
"-Dexec.args=-classpath %classpath Test" 
"-Dexec.executable=C:\\Program Files (x86)\\Java\\jdk1.7.0_02\\bin\\java.exe" 
-Dexec.classpathScope=test --offline --errors process-classes org.codehaus.mojo:exec-maven-plugin:1.2:exec
Error stacktraces are turned on.
Scanning for projects...

------------------------------------------------------------------------
Building Test 1.0
------------------------------------------------------------------------

[resources:resources]
[debug] execute contextualize
Using 'windows-1252' encoding to copy filtered resources.
Copying 0 resource

[compiler:compile]
Nothing to compile - all classes are up to date

[exec:exec]
Error: could not find or load main class MainTest
------------------------------------------------------------------------
BUILD FAILURE

我的動作是(也試過classPathScope = test):

    <action>
        <actionName>run</actionName>
        <goals>
            <goal>process-classes</goal>
            <goal>org.codehaus.mojo:exec-maven-plugin:1.2:exec</goal>
        </goals>
        <properties>
            <exec.args>-classpath %classpath MainTest</exec.args>
            <exec.executable>java</exec.executable>
            <exec.classpathScope>${classPathScope}</exec.classpathScope>
            <exec.workingdir>D:\Dropbox\Java\Test Automation Selenium</exec.workingdir>
        </properties>
    </action>

我不是Java的專業人士,大多數我用Google搜索,但我找不到解決方案。 我也不明白為什么它不起作用。 我試圖從我的默認包中訪問測試包,但是這是不可能的...

請幫助? :) 謝謝

這聽起來像是一個神奇的“沒有發現主要類別”的例外(如果不是,請對不起!)。

我在NB用戶郵件列表上已經看過很多次了,每年我也遇到過這個神奇的例外。 收集了我找到的解決方案 ,這通常幫助我修復了這種異常/錯誤(列表基於NB 6.8的時間,但可能仍然存在)。

  • 確保您有一個包含main方法的公共類
  • 這個類必須有一個定義良好的main方法:“public static void main(String [] args){}”
  • 您已使用正確的類設置項目配置:項目屬性>運行>主類(可能只是再次設置它,以便再次寫入項目屬性文件)
  • 嘗試重建項目:菜單>運行>清理和構建主項目
  • 仍然沒有成功? 嘗試重命名該類(Foo - > Foo1)並將其重命名(Foo1 - > Foo)。 這應該使此文件的NetBeans緩存無效(假設 - 我不是NetBeans開發人員)。
  • 仍然沒有成功? 您可能必須通過刪除目錄“.netbeans \\ 6.8 \\ var \\ cache”來清除NetBeans緩存(6.8當然可能因您的NetBeans版本而異)。 在刪除緩存之前關閉NetBeans - 下次啟動可能需要一些時間,因為NB很可能必須再次掃描您的代碼。
  • 仍然沒有運氣? 您可能需要咨詢NetBeans用戶論壇或nbusers-Mailinglist(請保持友好,耐心並以其他人能夠提供幫助的方式報告錯誤)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM