Git、Intellij和module-info.java存在问题
因此,我现在正在进行一个组Java14项目,我的代码在构建和执行方面似乎出现了一些问题。不久前,由于Eclipse处理Git的方式有困难,我从Eclipse转换过来,尽管存在这些问题,我还是非常喜欢IntelliJ。该项目使用JavaFX,因此我从网站下载并按照所有说明进行操作,包括将lib文件夹添加为库,以及将所有VM选项添加到运行配置中 然后,我确保检查了所有必要的模块并将其应用于项目: 代码中没有任何错误,我的module-info.java如下所示:Git、Intellij和module-info.java存在问题,java,git,intellij-idea,javafx,module-info,Java,Git,Intellij Idea,Javafx,Module Info,因此,我现在正在进行一个组Java14项目,我的代码在构建和执行方面似乎出现了一些问题。不久前,由于Eclipse处理Git的方式有困难,我从Eclipse转换过来,尽管存在这些问题,我还是非常喜欢IntelliJ。该项目使用JavaFX,因此我从网站下载并按照所有说明进行操作,包括将lib文件夹添加为库,以及将所有VM选项添加到运行配置中 然后,我确保检查了所有必要的模块并将其应用于项目: 代码中没有任何错误,我的module-info.java如下所示: module activity
module activity7
{
exports activity7;
requires javafx.controls;
requires transitive javafx.graphics;
requires static junit;
}
但是,在构建项目以运行一些JUnit测试时,我收到了以下构建输出:
java: module not found: junit
java: module not found: javafx.graphics
java: module not found: javafx.controls
有趣的是,如果我删除模块info.java
,项目的构建和运行与预期完全一样。我的团队已经表示他们需要该文件,但在我的库中有了它,我实际上无法构建/运行任何东西。我试图将其放在.gitignore中,但即使我更改了模块info.java
的内部结构,它仍然会在我的默认更改列表中显示为要提交的更改。对于本地更改,与.git/info/exclude
相同。我试图关闭项目并从git重新导入它,同时使缓存失效并重新启动,但似乎没有任何东西可以消除构建错误。该项目的结构如下:
最后是.gitignore的内容:
# Compiled class file
*.class
.classpath
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.idea/
/303a2t6.iml
out/
bin/
.DS_Store/
*.iws
workspace.xml
tasks.xml
*.iml
和.git/info/exclude:
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
我真的迷路了,希望能得到一些帮助或指导来解决这个问题。我目前仍然可以向存储库贡献代码,但它要求我删除我的
module info.java
的本地副本,并确保我不会意外地提交其删除并将其推送到远程repo。然后,当然,无论何时拉动,我都必须再次重复该过程。将所有控制器类发送到package activity7.controller(MVC-模型、视图、控制器)了解这一点
模块活动7
{
需要javafx.controls;
需要javafx.graphics;
导出活动7;
导出activity7.controller;
}
我只是不知道它是否能与JUnit一起工作
可能尝试在测试中创建新的模块信息,然后在那里
模块活动7
{
需要junit;
出口活动7;
导出activity7.controller;
}
例如,我的项目: