无法加载或查找主类,在命令行中工作但不在IDE的

时间:2018-04-09 17:08:53

标签: java eclipse gradle

在将此标记为重复之前,请听我说。

我正在尝试使用gradle导入一个java项目(功能齐全,适用于所有其他笔记本电脑而没有问题)。

  1. 我的项目100%正常运行,适用于所有其他笔记本电脑

  2. 此问题始于我的笔记本电脑被重新成像为Windows 10

  3. 我已经在PATH中配置了环境变量JAVA_HOME = C:\Program Files\Java\jdk1.8.0_161我添加了C:\Program Files\Java\jre1.8.0_161\bin

  4. 命令行我看到了正确的版本。 (Java -version)

  5. 我右键单击了我的项目“configure build path”。我确保它是我在环境变量(1.8.0_161)中提到的最新版本。

  6. 我已导入我的项目,清理构建,刷新并运行(显示无法找到或加载主类)

  7. 在命令行中,我成功gradle clean build构建,没有错误

  8. 我还运行了我的java应用程序java -jar app.jar我的应用程序启动并在localhost上运行:8080

  9. 我创建了一个测试项目,这是一个简单的hello世界,它运行时没有任何问题。

  10. 那么,我的问题是什么导致这无法在ECLIPSE和Spring工具套件IDE中加载主类错误?

    PS:我没有任何错误配置包(因为我提到的项目可以在任何其他笔记本电脑上完美找到)  此外,我删除了Eclipse(.p2,.eclipse,eclipse和eclipse工作区文件夹),Java和gradle并重新安装了所有这些。

    更新

    如上所述(#8),如果我运行.jar应用程序,它将起作用。

    我也尝试通过命令提示符

    运行我的java应用程序

    java C://.......myMainApp.java

    Error: Could not find or load main class com.jesse.umsswap.app.myMainApp
    

    修改不重复

    正如我在这篇文章中所提到的,Jarrod提供的两个链接并没有解决我的问题。我已经通过这两个帖子,解决方案没有解决我的问题。

    PS

    您是否曾在git中使用过java项目,但是当您克隆它时会说“无法加载或查找主类”?

1 个答案:

答案 0 :(得分:1)

如果./gradlew clean build没有错误,那么生成的jar可以成功运行,你的Gradle包装器就可以了(请参阅问题评论以获取更多信息),也许重新导入项目到eclipse(作为Gradle项目, - > buildship)可能会导致找到主要类

我的想法:您确保您的gradle构建正在运行,并且同一工作中的其他gradle项目也可以正常运行。然后,下一个合乎逻辑的步骤是使用项目的新副本:重新导入它。

关闭eclipse后,删除所有与eclipse相关的文件(.settingsbin.classpath.project)以及用于启动应用程序的运行配置。确保备份或了解所有信息以重新创建它(vm args,运行配置的环境变量)。

我知道这是一个侵入性的步骤,但如果你说其他新的日食项目有效,为什么不让你的项目成为一个新的项目呢?