在尝试了各种添加方法后如何修复 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
添加到我的项目中。
在花了几个小时在线调查后,我尝试通过以下方式进行调查:
- 在
src
文件夹里面新建一个libs
文件夹,复制粘贴stdlib.jar
然后右击selectAdd as a Library
;
- 转到
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
,它立即运行。
我无法解释为什么会这样,因为我不知道。我确实按照同样的顺序做了同样的事情。希望这对某人有所帮助,并感谢所有试图提供帮助的人。
我在 IntelliJ Idea 2018 中创建了一个简单的 Java 项目,我正在尝试将 stdlib
添加到我的项目中。
在花了几个小时在线调查后,我尝试通过以下方式进行调查:
- 在
src
文件夹里面新建一个libs
文件夹,复制粘贴stdlib.jar
然后右击selectAdd as a Library
; - 转到
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
,它立即运行。
我无法解释为什么会这样,因为我不知道。我确实按照同样的顺序做了同样的事情。希望这对某人有所帮助,并感谢所有试图提供帮助的人。