5

Lift in Action を読んで、Lift フレームワークを使い始めようとしています。例に沿って進みたいのですが、Lift のインストールですぐに問題に遭遇しました。Lift を簡単に使い始める方法はいろいろあると思いますが、本書にあるように Lifty を使って、それに従っていきたいと思います。

問題は、この本が出版されてから、Lifty とsbt(そして Lift も!) の両方が進歩したことです。sbtUbuntu の Typesafe リポジトリからインストールしました。今、Lifty をインストールしようとして立ち往生しています。

Lifty のドキュメントSO に関するこの回答 (sbt Lifty が0.11.3のバイナリをリリースしていないため)に従って、以下を~/.sbt/plugins/build.sbt.

resolvers += Resolver.url("sbt-plugin-releases", new URL("http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases/"))(Resolver.ivyStylePatterns)

addSbtPlugin("org.lifty" % "lifty" % "1.7.4")

libraryDependencies +=
  Defaults.sbtPluginExtra(
    "org.lifty" % "lifty" % "1.7.4",
    "0.11.2",
    "2.9.1"
  )

後者はsbt、sbt 0.11.2 用の Lifty プラグインを使用するように指示することです。

sbtLifty をダウンロードして正しく起動できるようになりましたが、コマンドがありませんlifty。だから私がするとき

lifty learn lift https://raw.github.com/Lifty/lifty/master/lifty-recipe/lifty.json

sbt不満:

[error] Not a valid key: lifty (similar: history)
[error] lifty learn lift https://raw.github.com/Lifty/lifty/master/lifty-recipe/lifty.json
[error]      ^

Lifty のインストール方法を教えてください。私は Scala、sbt、Lift を初めて使用することに注意してください。

編集

Lifty をsbt0.7.7 にダウングレードすることでインストールできました。しかし、もしそうなら

> lift create project-blank
> reload
> update

エラーが発生します

[error] sbt.ResolveException: unresolved dependency: net.liftweb#lift-webkit_2.9.1;2.3-RC3: not found
[error] unresolved dependency: org.scala-tools.testing#specs_2.9.1;1.6.6: not found
[info] == update ==
[error] Error running update: sbt.ResolveException: unresolved dependency: net.liftweb#lift-webkit_2.9.1;2.3-RC3: not found
[error] unresolved dependency: org.scala-tools.testing#specs_2.9.1;1.6.6: not found
4

1 に答える 1

0

私はあなたにそれを壊したくありませんが、lifty はなくなりました。これを書いている時点で、sbt の安定版は 0.13.0 です。sbt community repoを見ると、リリースされたバージョンは sbt 0.11.2 の 1.7.4 だけでした。

公式ウェブサイトには次のように書かれています。

Lift クックブックは、Liftの使用方法を学習するための最新のリソースです。

SBT を使用して最初から Lift プロジェクトを作成するというセクションがあります。

問題

Lift の公式 Web サイトで提供されている ZIP ファイルを使用せずに、Lift Web プロジェクトをゼロから作成したいと考えています。

解決

SBT と Lift プロジェクトを自分で構成する必要があります。幸いなことに、必要な小さなファイルは 5 つだけです。まず、次の場所に SBT プラグイン ファイルを作成しますproject/plugins.sbt(すべてのファイル名は、プロジェクトのルート ディレクトリからの相対パスで指定します)。

addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "0.3.0")

このファイルは、xsbt-web-plugin を使用することを SBT に伝えます。

次に、SBT ビルド ファイル build.sbt... を作成します。

残念ながら、xsbt-web-plugin 0.3.0 は sbt 0.12 用です。したがって、sbt 0.12 を使用するか、命令を少し変更する必要があります。sbt 0.13の最新のxsbt-web-pluginは 0.4.2 なので、次のように入力しproject/plugins.sbtます。

addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "0.4.2")

resolvers += Resolver.sonatypeRepo("public")

このページの残りの指示に従うことができました...最終的に、sbt 0.13 によってすべてが取り込まれ、コンテナーを開始することができました。

> container:start
[info] Compiling 1 Scala source to /foo/sbt-lift-test/target/scala-2.10/classes...
[info] jetty-8.1.7.v20120910
....
[success] Total time: 2 s, completed Sep 20, 2013 10:34:22 PM

http://localhost:8080/ブラウザーを使用して開きます。

ようこそ、Lift のインストールが機能するようになりました

于 2013-09-21T02:39:02.920 に答える