我已经使用Eclipse一段时间了,我无法理解我在IntelliJ中的第一个项目发生了什么。我已经阅读了文档,并搜索了其他问题,但我仍然无法理解它。我认为我的项目结构有问题。这就是我的结构目前的样子;
我正在尝试运行JavaForLoop
类,但是每当我这样做时,编译都会失败,因为我在StringMethods
包的strings
类中有错误。我的问题是,如果两个类在单独的包中,为什么会阻止编译?这两个类都没有使用另一个,它们都有适当的package
声明语句。在Eclipse中具有类似的结构,这将起作用。我应该使用不同的项目结构吗?
答案 0 :(得分:1)
默认情况下,IDEA会添加在启动之前执行的构建配置,并包含以下步骤(取自here):
在“编辑配置”屏幕中检查您的情况是否属实,如果是,请将其删除。
答案 1 :(得分:0)
要使用其他包中的类,必须向该类声明一个import语句。
在你的JavaForLoop.java中,在class语句之前添加导入(并在包声明之后添加它的情况)
//package ...
import strings.StringMethods;
//public class JavaForLoop { and the rest of the code
答案 2 :(得分:0)
Intellij使用常规javac,如果代码中的任何地方有错误,将无法编译。
Eclipse拥有自己的编译器,它允许编译甚至运行具有编译错误的代码,如果运行有错误的代码的任何部分,则会导致运行时异常。这允许您运行部分代码,即使其他代码片段失败也是如此。
简单的解决方案是解决编译错误。你也可以在Intellij中使用eclipse编译器,但我从来没有这样做过,所以我无法评论它的工作情况。