【问题标题】:Compilation error - package does not exist - Java编译错误 - 包不存在 - Java
【发布时间】:2023-03-08 11:40:02
【问题描述】:

我的文件结构如下:

root-folder
--.idea
--folder1-java-console-application (module 1)
----src
------main/java/my/package/App.java
----pom.xml
--folder2-play-framework-2-ui (module 2)
----app
------controllers
--------Application.java

Application.java 依赖于 my.package.App.java。所以,我像这样导入这个包:

Application.java:

import my.package.App;

public class Application extends Controller {
    public static Result index() {
        return ok(index.render("Your new application is ready."));
    }
}

我也 added module 1module 2 的依赖列表中。

现在,当我启动 Play-server 时,我没有任何错误。但是,当我打开 URL http://localhost:9000/ 时,我收到错误:编译错误 - 包 my.package.App 不存在

我很困惑。我可以编译我的代码,但我在运行时遇到了麻烦。我有生以来第一次尝试游戏框架。所以,可能我不知道这方面的一些信息。

完整的启动项目命令(来自 IDEA)是:

"C:\Program Files\Java\jdk1.8.0_11\bin\java" -Dfile.encoding=UTF8 -Djline.terminal=none -Dsbt.log.noformat=true -Dsbt.global.base=C:\Users\Mike\AppData\Local\Temp\sbt-global-plugin3stub -Xms512M -Xmx1024M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M -classpath C:\Users\Mike\.IntelliJIdea14\config\plugins\Scala\launcher\sbt-launch.jar xsbt.boot.Boot run

【问题讨论】:

    标签: java intellij-idea dependency-management playframework-2.4


    【解决方案1】:

    (a) 检查您的 Play 应用程序是否可以在没有依赖项的情况下运行;

    (b) 检查您的 Play 应用程序在启动时在类路径中是否有模块 #1 - 请参阅播放框架 dependencies management

    (c) 使用 maven 构建模块 #1(maven guides + google 会有所帮助);

    (d) 检查您的模块 #1 jar 是否包含 my/package/App.class 文件。

    【讨论】:

    • (a) 已完成。 (b) - 我不确定 Play 应用程序必须在类路径中有模块 1,因为模块 1 只是 *.java 文件。 (c) 没有jar“模块”,它只是运行时的文件夹和*.class文件。
    • 您从 IDE 启动应用程序。控制台中的第一行描述了启动应用程序的完整 Java 命令。将其添加到您的问题描述中。
    • 看来你没有使用maven。在项目设置 > 模块 #2 中添加对模块 #1 的显式依赖
    • 我只在模块 1 中使用 maven。我已经添加了依赖项 - snag.gy/LEt7n.jpg
    • 最后一次尝试 - 在 play 应用程序中创建 lib/ 文件夹并在此处放置模块 #1 jar 文件(参见步骤 b 中的链接)。
    猜你喜欢
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 2021-12-07
    • 2012-02-29
    • 2015-05-07
    • 2017-08-30
    相关资源
    最近更新 更多