繁体   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