2017-07-27 130 views
0

在导入我的斯卡拉SBT项目的IntelliJ我得到以下错误部署斯卡拉SBT Google App Engine的

Error while importing SBT project: ... 
[info] Loading project definition from /home/dnilesh/Desktop/app-engine/sbt-appengine-demo-master/project 
java.lang.RuntimeException: You need to set APPENGINE_SDK_HOME 
at scala.sys.package$.error(package.scala:27) 
at sbtappengine.Plugin$AppEngine$.buildAppengineSdkPath(AppenginePlugin.scala:103) 
at sbtappengine.Plugin$$anonfun$baseAppengineSettings$33.apply(AppenginePlugin.scala:219) 
at sbtappengine.Plugin$$anonfun$baseAppengineSettings$33.apply(AppenginePlugin.scala:219) 
at sbt.Init$Value$$anonfun$apply$13.apply(Settings.scala:604) 
at sbt.EvaluateSettings$$anonfun$sbt$EvaluateSettings$$constant$1.apply(INode.scala:163) 
at sbt.EvaluateSettings$$anonfun$sbt$EvaluateSettings$$constant$1.apply(INode.scala:163) 
at sbt.EvaluateSettings$MixedNode.evaluate0(INode.scala:175) 
at sbt.EvaluateSettings$INode.evaluate(INode.scala:135) 
at sbt.EvaluateSettings$$anonfun$sbt$EvaluateSettings$$submitEvaluate$1.apply$mcV$sp(INode.scala:69) 
at sbt.EvaluateSettings.sbt$EvaluateSettings$$run0(INode.scala:78) 
at sbt.EvaluateSettings$$anon$3.run(INode.scala:74) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
at java.lang.Thread.run(Thread.java:748) 
[error] You need to set APPENGINE_SDK_HOME 
[error] Use 'last' for the full log. 
Invalid response. 
See complete log in file:/home/dnilesh/.IdeaIC2017.2/system/log/sbt.last.log Consult IDE log for more details (Help | Show Log) 

,并在部署相同的应用程序从终端Google App Engine的,我得到了同样的错误后,在终端我设置APPENGINE_SDK_HOME到我的谷歌云安装目录/usr/lib/google-cloud-sdk/platform/google_appengine/。那么我得到以下错误。

那么我如何设置APPENGINE_SDK_HOME和哪个路径,以便sbt appengineDeploy命令可以工作。

[email protected]:/home/dnilesh/Desktop/app-engine/sbt-appengine-demo-master# sbt appengineDeploy 
[info] Loading project definition from /home/dnilesh/Desktop/app-engine/sbt-appengine-demo-master/project 
java.lang.RuntimeException: not found appengine api jar. 
    at scala.sys.package$.error(package.scala:27) 
    at sbtappengine.Plugin$AppEngine$.buildSdkVersion(AppenginePlugin.scala:114) 
    at sbtappengine.Plugin$$anonfun$baseAppengineSettings$32.apply(AppenginePlugin.scala:218) 
    at sbtappengine.Plugin$$anonfun$baseAppengineSettings$32.apply(AppenginePlugin.scala:218) 
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47) 
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47) 
    at sbt.EvaluateSettings$MixedNode.evaluate0(INode.scala:175) 
    at sbt.EvaluateSettings$INode.evaluate(INode.scala:135) 
    at sbt.EvaluateSettings$$anonfun$sbt$EvaluateSettings$$submitEvaluate$1.apply$mcV$sp(INode.scala:69) 
    at sbt.EvaluateSettings.sbt$EvaluateSettings$$run0(INode.scala:78) 
    at sbt.EvaluateSettings$$anon$3.run(INode.scala:74) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
[error] not found appengine api jar. 
[error] Use 'last' for the full log. 
+0

什么是APPENGINE_SDK_HOME的路径,或者如何设置它。 https://github.com/jasonmar/sbt-appengine-demo#setup – Nilesh

+0

'APPENGINE_SDK_HOME' *可能指的是GAE SDK,而不是GCloud,请参阅https://stackoverflow.com/questions/33769879/what -is最关系-间谷歌应用程式发动机-SDK-和云的SDK/33770297#33770297。检查是否属实,如果是这样,请安装GAE SDK。至少在Linux上,两个SDK可以在同一个系统上共存。 –

回答

0

步骤我没弄清楚这个问题:

  1. 下载App Engine SDK的Java: Google App Engine

Direct Download Link

  • 无论您的GCloud insta如何将其解压到您的计算机中路径。

  • 集APPENGINE_SDK_HOME:

    出口APPENGINE_SDK_HOME = /PATH/TO/SDK/appengine-java-sdk-1.9.54

  • 样本下载斯卡拉SBT应用。 Github Sample Scala App

  • 运行sbt appengineDeploy命令运行应用程序。在Google云上将项目ID更改为您的项目ID。 Steps before running app

  • 注:

    1. 不能安装第三方数据库,如在GAE上的MongoDB。

    2. gae不支持akka框架。

    3. gae不支持多线程。