【问题标题】:Javalin webserver loads config from another webserverJavalin 网络服务器从另一个网络服务器加载配置
【发布时间】:2020-06-18 16:27:54
【问题描述】:

我得到了这个服务器,我在其中加载了几个不同的 jar 作为插件。其中 2 个 jar 使用 Javalin、Jetty 网络服务器来实现某些功能。目前我的插件出于某种原因从另一个 jar 加载 io.javalin.core.JavalinConfig,这会导致冲突,因为它还会抱怨无法找到 jar 文件中的 web 文件。

[13:46:30 WARN]:[ItemSorter] 从 Storefront v2.0-SNAPSHOT 加载了类 io.javalin.core.JavalinConfig,这不是该插件的依赖、软依赖或 loadbefore。
[13:46:30 WARN]:[ItemSorter] 插件 ItemSorter v0.01 在执行任务 221 java.lang.RuntimeException 时产生异常:路径为“/web”的静态资源目录不存在。根据您的设置,空文件夹可能不会被复制到类路径。在 io.javalin.http.staticfiles.JettyResourceHandler.getResourcePath(JettyResourceHandler.kt:59) ~[?:?] 在 io.javalin.http.staticfiles.JettyResourceHandler.addStaticFileConfig(JettyResourceHandler.kt:27) ~[?:?]在 io.javalin.core.JavalinConfig.addStaticFiles(JavalinConfig.java:122) ~[?:?] 在 io.javalin.core.JavalinConfig.addStaticFiles(JavalinConfig.java:115) ~[?:?] 在 io.javalin .core.JavalinConfig.addStaticFiles(JavalinConfig.java:111) ~[?:?]

加载我的 javalin 的片段:

app = Javalin.create(config -> {
        config.addStaticFiles("/web");
        config.showJavalinBanner = false;
        config.requestCacheSize = 30000L;
    }).start(config.getInt("port"));

另一个插件加载javalin的片段:

val app = Javalin.create().start(7000)

任何人有任何关于分离负载的想法吗?

【问题讨论】:

    标签: java kotlin jetty javalin


    【解决方案1】:

    您提供给addStaticFiles() 方法的路径是完全限定的路径名​​。

    错误告诉您,您的文件系统上没有位于 /web 的目录(或文件)(这将是您文件系统根目录下名为“web”的目录)

    使路径指向实际存在的真实资源位置。

    【讨论】:

      猜你喜欢
      • 2015-01-27
      • 1970-01-01
      • 2016-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-20
      相关资源
      最近更新 更多