在尝试了各种添加方法后如何修复 IntelliJ Idea 中的 NoClassDefFoundError stdlib.jar

How to fix the NoClassDefFoundError in IntelliJ Idea after having tried every way to add stdlib.jar

我在 IntelliJ Idea 2018 中创建了一个简单的 Java 项目,我正在尝试将 stdlib 添加到我的项目中。

在花了几个小时在线调查后,我尝试通过以下方式进行调查:

  1. src文件夹里面新建一个libs文件夹,复制粘贴stdlib.jar然后右击selectAdd as a Library;
  2. 转到 Project Structure -> Modules -> Dependencies -> + JARs or directories 并 select 访问 stdlib.jar

我发现有人抱怨这样做,但 IntelliJ 没有建议导入需要使用 StdOut,例如。但是,当我添加 stdlib.jar 文件并将其打包时,IntelliJ 立即建议我应该使用的导入,并且没有任何错误。

不过,当我尝试 运行 项目时,它总是 运行 进入 NoClassDefFoundError

我花了几个小时研究这个问题,尝试了不同的方法来添加和导入库,但结果总是一样的。

我附上了一个打印屏幕,其中显示了我当前的项目结构、导入和使用 stdlib.jar

真的希望你们能帮助我。 谢谢!

Link下载stdlib-package.jar - https://introcs.cs.princeton.edu/java/stdlib/stdlib-package.jar

MANIFEST.MF

Manifest-Version: 1.0 
Main-Class: com.edgelab.hospital.Application

HOSPITAL_SIMULATOR_JAR.xml

<component name="ArtifactManager">
  <artifact type="jar" name="hospital-simulator:jar">
    <output-path>$PROJECT_DIR$</output-path>
    <root id="archive" name="hospital-simulator.jar">
      <element id="module-output" name="HospitalSimulator" />
    </root>
  </artifact>
</component>

stdlib-package.xml

<component name="libraryTable">
  <library name="stdlib-package">
    <CLASSES>
      <root url="jar://$PROJECT_DIR$/../stdlib-package.jar!/" />
    </CLASSES>
    <JAVADOC />
    <SOURCES>
      <root url="jar://$PROJECT_DIR$/../stdlib-package.jar!/" />
    </SOURCES>
  </library>
</component>

所以,我终于解决了。这是错误的地方:没有。

在网上搜索后,我发现(由于某种原因我不能 post link)一个答案建议复制我的代码,删除项目并创建一个新的。 因此,我删除了我的项目,使用相同的代码创建了一个新项目,创建了相同的工件,将 stdlib-package.jar 添加为库并重建了 hospital-simulator.jar,它立即运行。

我无法解释为什么会这样,因为我不知道。我确实按照同样的顺序做了同样的事情。希望这对某人有所帮助,并感谢所有试图提供帮助的人。