加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

使用Build.scala文件时覆盖jetty端口设置

发布时间:2020-12-16 10:04:16 所属栏目:安全 来源:网络整理
导读:我正在将我的构建从build.sbt移动到Build. scala文件,并且在使用xsbt-web-plugin时我无法覆盖jetty端口设置.使用build.sbt时,我可以使用以下方法设置属性: port in container.Configuration := 8081 在我的.scala文件中,我尝试过一些东西但是jetty总是从808
我正在将我的构建从build.sbt移动到Build. scala文件,并且在使用xsbt-web-plugin时我无法覆盖jetty端口设置.使用build.sbt时,我可以使用以下方法设置属性:

port in container.Configuration := 8081

在我的.scala文件中,我尝试过一些东西但是jetty总是从8080开始,例如在我的BuildSettings对象中:

import sbt._
import Keys._
import com.earldouglas.xsbtwebplugin.PluginKeys._
object BuildSettings {
  lazy val settings =  com.earldouglas.xsbtwebplugin.WebPlugin.webSettings ++ seq(
    ...
    port := 8081,...
  ) 
}

我也试过在Build.scala的Project定义中覆盖它:

lazy val root = Project("test",file("."))
    .settings(settings: _*)
    .settings(port := 8081)

但它总是从8080开始.在这两种情况下,运行show port显示8081.

解决方法

问题是Web插件将其端口设置隐藏在配置中.它允许多个容器具有不同的端口设置.但是,它不是从非范围键中拉出端口(就像许多插件一样).

所以你必须明确地做:

port in:= 8081

在sbt控制台上,如果你在服务器启动任务上检查树,你可能会看到它依赖于< config>部分设置的地方.

我认为默认情况下,您需要:

port in container.Configuration := 8081

如果您使用的是.scala文件,则可能还需要包含具有Container的文件,即

import com.earldouglas.xsbtwebplugin.WebPlugin.container

我还建议在Web插件上打开一个功能请求,以自动将端口设置委托给Global,并为默认的Web插件指定默认设置.

您可以使用以下两种设置自行模仿:

port in container.Configuration := port in Global

port in Global := 8081

希望有所帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读