heroku - 导致 Scala Play 构建在 heroku 上失败的依赖性问题
heroku - dependency issue causing Scala Play build to fail on heroku
我是 Scala 和 Play 框架 (2.6.x) 的新手。请参阅下面的 git push heroku master
失败屏幕截图。
我需要 build.sbt
(第一个)中的 jsoup 依赖项:
libraryDependencies += "org.jsoup" % "jsoup" % "1.11.3"
libraryDependencies += guice
libraryDependencies += "org.scalatestplus.play" %% "scalatestplus-play" % "3.1.2" % Test
并在我的控制器中使用它:
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
...
val res = scala.io.Source.fromURL(data.url)("ISO-8859-1").mkString
val s = Jsoup.parse(res).title
此外,我试图通过将它添加到 lib/ 文件夹来将其用作 unmanaged dependency,但我仍然遇到相同的 Heroku 错误。
有趣的是,该应用程序在本地运行正常且没有错误。有什么我想念的吗?谢谢。
编辑:
构建日志的开头:
失败:
我的猜测是,您从模板创建了 Play 项目。 Initial template 包含 build.sbt
和 gradle 构建(build.gradle
、gradlew
、gradlew.bat
。在本地,您使用 sbt
进行编译. 然而,Heroku 选择 Gradle build.
问题:您仅将依赖项添加到 build.sbt
,但未添加到 gradle.build
文件。
如果您真的不需要 Gradle,我建议您从存储库中删除 Gradle 构建文件并尝试再次推送。
如果你想让 Heroku 继续使用 Gradle,那么你必须同时维护这两种类型的构建文件。
可能还有一种方法可以指示 Heroku 使用 sbt
作为首选。
我是 Scala 和 Play 框架 (2.6.x) 的新手。请参阅下面的 git push heroku master
失败屏幕截图。
我需要 build.sbt
(第一个)中的 jsoup 依赖项:
libraryDependencies += "org.jsoup" % "jsoup" % "1.11.3"
libraryDependencies += guice
libraryDependencies += "org.scalatestplus.play" %% "scalatestplus-play" % "3.1.2" % Test
并在我的控制器中使用它:
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
...
val res = scala.io.Source.fromURL(data.url)("ISO-8859-1").mkString
val s = Jsoup.parse(res).title
此外,我试图通过将它添加到 lib/ 文件夹来将其用作 unmanaged dependency,但我仍然遇到相同的 Heroku 错误。
有趣的是,该应用程序在本地运行正常且没有错误。有什么我想念的吗?谢谢。
编辑:
构建日志的开头:
失败:
我的猜测是,您从模板创建了 Play 项目。 Initial template 包含 build.sbt
和 gradle 构建(build.gradle
、gradlew
、gradlew.bat
。在本地,您使用 sbt
进行编译. 然而,Heroku 选择 Gradle build.
问题:您仅将依赖项添加到 build.sbt
,但未添加到 gradle.build
文件。
如果您真的不需要 Gradle,我建议您从存储库中删除 Gradle 构建文件并尝试再次推送。
如果你想让 Heroku 继续使用 Gradle,那么你必须同时维护这两种类型的构建文件。
可能还有一种方法可以指示 Heroku 使用 sbt
作为首选。