我正在尝试弄清楚如何在生产中打包和部署我的lagom
应用程序。 文档对如何实际执行此操作非常腼腆,当我尝试使用sbt-native-packager
运行universal:packageBin
时,我收到警告You have no main class in your project. No start script will be generated.
有没有人解决这个问题并知道一个好的教程或可以参考的东西?
> https://github.com/lagom/lagom/blob/a35fab1ad8a0c4a3d28d6c86ae31a2408da2e340/dev/sbt-plugin/src/main/scala/com/lightbend/lagom/sbt/LagomSettings.scala#L28
将其添加到您的项目中将修复它。也就是说,通常您不应该看到此警告,因为 Lagom 插件应该为您配置它。我能想到两个原因,为什么你可能会看到这个警告。
首先是你没有在你的项目上启用 Lagom 插件。如果是这种情况,并且您没有做一些您真正知道自己在做什么的高级事情(如果您真的知道自己在做什么,如果您不得不问这个问题,我会感到惊讶),那么您可能配置错误,需要启用 Lagom 插件。
第二个可能是您在多个项目上运行universal:packageBin
,其中一些项目启用了 Lagom 插件,而另一些项目则没有。在这种情况下,您可能只想为 Lagom 项目构建生产工件,而不是为所有其他项目(例如 API 项目或根项目)构建生产工件。因此,只需为您的服务运行它(例如,运行my-service-impl/universal:packageBin
)。