1

activator new simple play-scalaコマンドを使用して新しいプロジェクトを作成しました。simpleは私のプロジェクト名です。このプロジェクトをEclipse(ScalaIDE)にインポートしたいので、activator eclipseコマンドを使用しましたが、以下の例外が表示されました

[error] Not a valid command: eclipse (similar: help, alias)
 [error] Not a valid project ID: eclipse 
[error] Expected ':' [error] Not a valid key: eclipse (similar: deliver, licenses, clean) 
[error] eclipse [error]

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0") このエラーのために、 https://www.playframework.com/documentation/2.4.x/IDEコマンドを追加しましsimple/project/plugins.sbtた 上記のエラーは解決しましたが、エラーが表示されます

 [warn]            +- default:simple_test-build:0.1-SNAPSHOT (scalaVersion=2.10,
    sbtVersion=0.13)
    sbt.ResolveException: unresolved dependency: com.typesafe.sbteclipse#sbteclipse-
    plugin;4.0.0: not found
        at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:291)
        at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:188)
        at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:165)
        at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)
        at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)
        at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:132)
        at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57)
        at sbt.IvySbt$$anon$4.call(Ivy.scala:65)
        at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
        at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRet
ries$1(Locks.scala:78)
        at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:
97)
        at xsbt.boot.Using$.withResource(Using.scala:10)
        at xsbt.boot.Using$.apply(Using.scala:9)
        at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
        at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
        at xsbt.boot.Locks$.apply0(Locks.scala:31)
        at xsbt.boot.Locks$.apply(Locks.scala:28)
        at sbt.IvySbt.withDefaultLogger(Ivy.scala:65)
        at sbt.IvySbt.withIvy(Ivy.scala:127)
        at sbt.IvySbt.withIvy(Ivy.scala:124)
        at sbt.IvySbt$Module.withModule(Ivy.scala:155)
        at sbt.IvyActions$.updateEither(IvyActions.scala:165)
        at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala
:1369)
        at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala
:1365)
        at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1
399)
        at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1
397)
        at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:37)
        at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1402)
        at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1396)
        at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:60)
        at sbt.Classpaths$.cachedUpdate(Defaults.scala:1419)
        at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1348)
        at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1310)
        at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
        at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
        at sbt.std.Transform$$anon$4.work(System.scala:63)
        at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:22
6)
        at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:22
6)
        at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
        at sbt.Execute.work(Execute.scala:235)
        at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
        at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
        at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestric
tions.scala:159)
        at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:51
1)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        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] (*:update) sbt.ResolveException: unresolved dependency: com.typesafe.sbt
eclipse#sbteclipse-plugin;4.0.0: not found  

sbt バージョン: =0.13.8 scalaVersion: =2.11.6

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "3.0.0")もこれを試してみましたが、Eclipseプロジェクトは正常にビルドされましたが、エラーが表示されました

アプリケーション.scala

object index is not a member of package views.html

index.scala.html,main.scala.html

Multiple annotations found at this line:
- type Html is not a member of package play.api.templates
- type Html is not a member of package play.api.templates
- type Html is not a member of package play.api.templates
- object HtmlFormat is not a member of package
play.api.templates
4

2 に答える 2

4

まず第一に、ScalaIDE はまだ開発中であり、まだ Eclipse JDT ほど安定していません。私の知る限り、特に Play のサポートにはまだいくつかの問題があります。ただし、activator/sbt を使用すると、問題なく Play コードをコンパイル、テスト、および実行できます。

しかし、エラーメッセージを見てみましょう。それらを取り除きたいと思います。;)

  1. 使用してaddSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "3.0.0")ください。4.0.0 は最終版ではなく、まだ利用可能ではありません。
  2. object index is not a member of package views.html. この質問の答えを見てください。一般的な解決策はまだありません。ただし、私にとっては、プロジェクトのビルド パスにさらに 2 つのソース フォルダーを含めることができました。

    target/scala-2.11/routes/main
    target/scala-2.11/twirl/main
    
  3. type Html is not a member of package play.api.templatesなど。これを修正する方法がわかりません。ただし、変更を行った後に html ファイルを閉じてからクリーン ビルドを実行すると、すべてのエラー メッセージが表示されなくなります。

更新:問題 3 に関して、 Scala IDE ユーザー グループで議論があります。ただし、解決策はまだありません。

于 2015-06-01T22:32:29.150 に答える
0

同じ問題があります。sbteclipse プラグインのバージョンを以前のバージョンに設定しても機能しません。sbt はこれを断固として拒否し、利用できないバージョン 4.0 では破棄します。Sbt は苦痛です... 彼らの Web サイトでさえ、この問題についてのドキュメントを持っていません。

于 2016-06-17T13:24:53.763 に答える