27

でプロジェクトをインポートする際に問題を抱えている人はいActionBarSherlockますか? 合計 100 個のエラーと 17 個の警告があります。これは で完全に機能しましたEclipseGradle ビルド ファイルを作成する手順に従いました。プロジェクトをビルドしようとするまで、インポート エラーはありませんでした。

また、ABS を再ダウンロードしてプロジェクトに置き換えてみました。

ABS と に既知の問題はありましたIntelliJか? (もちろん、現在は Android Studio がベースになっています)

ここに私が見ているいくつかのエラーがあります:

        java: ...
        Workspace/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java:4: cannot find symbol
        symbol  : class Fragment
        location: package android.support.v4.app

        java: ...  Workspace/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java:4: cannot find symbol
        symbol  : class ListFragment
        location: package android.support.v4.app

        java: ...
        Workspace/ActionBarSherlock/src/com/actionbarsherlock/widget/SuggestionsAdapter.java:33:
        package android.support.v4.widget does not exist

どんな助けでも本当に感謝しています

編集:標準の IntelliJ IDEA を使用しても問題はないようです。ABSでセットアップするためのオンラインの多くのガイド。また、Jake が述べたように、彼は実際に IntelliJ で開発を行っています。

ガイドの例を次に示します: http://android-wtf.com/2012/09/how-to-configure-actionbarsherlock-with-intellij-idea/

ただし、Android Studioで機能しない理由はまだわかりません

Edit2:以下の回答の解決策。要するに:(最新バージョンをダウンロードし、抽出し、プロジェクトからabs古いバージョンを削除してから、既存のプロジェクトにディレクトリをインポートしました.Nb、私の特定のケースでは、junitコンパイルエラーに問題があり、 \test\ を削除する必要がありましたjunit\ )absfile > import module...actionbarsherlock

4

4 に答える 4

26

Android Studioだけでなく、へのモジュールのインポートには多くの一般的な問題があるActionBarSherlockようです。この回答はそれらにも対処する可能性があります。(ただし、junit に関連する最後の手順は に固有のものですabs)

以下の手順ActionBarSherlockにより、問題なく実行できました。

1)ここから最新の ABS をダウンロードしてください: http://actionbarsherlock.com/

2) ABS を抽出すると、「actionbarsherlock」というディレクトリがそこにあるはずです。それを Android Studio ワークスペースにコピーします。名前をActionBarSherlock (changed casing)-- > に変更\*documents*\Android Workspace\しました\Eclipse Workspace\

したがって、次のようなものが必要です。

\*documents*\Android Workspace\ActionBarSherlock\

あなたの主なプロジェクトと一緒に:

\*documents*\Android Workspace\TestProject\

3) Android Studio を開き、TestProject次に goto をロードしますFile> Import Module..\*documents*\Android Workspace\ActionBarSherlock\ ここで、 [OK] をクリックして [次へ] の下にある [ActionBarSherlock] に移動して終了します。新しいモジュールに依存関係を設定するかどうかを尋ねられます(または少なくとも私の場合は設定しました)[OK]をクリックします

4)コンパイル時のこの時点で、エラー\ActionBarSherlock\test\について不平を言っていJunitました。\Test\プロジェクトビューでABSモジュールからディレクトリを削除しただけです。Right click \test\ > Delete.... junit jarファイルを含めることもできますが、必要ではないと思います

5)エラーなしでコンパイルできるはずです。

うまくいけば、それは誰かを助けます。

ただし、基本的には、完全に新しいABSを再ダウンロードし、古いプロジェクトのABS(おそらくかなり古いもの)を消去してから、モジュールをインポートする必要がありました...

于 2013-05-16T02:46:43.760 に答える
6

これは私のために働く..

まず、wired00 によって提供された回答に続きます

ここからいくつかの変更を加えました。

Eclipse から Gradle ビルド ファイルを生成して、ActionBarSherlock ライブラリ プロジェクトに build.gradle ファイルを作成しました。

build.gradle を編集 (ActioBarSherlock ライブラリ プロジェクト用) 、依存関係に行を追加 {} compile files('libs/android-support-v4.jar')

build.gradle(私のプロジェクト用)を編集し、absを削除compile files('libs/android-support-v4.jar')して追加すると、 compile project(':abs')ActionBarSherlockライブラリプロジェクト名になるはずです。

settings.gradle の編集、追加,':abs'

ActionBarSherlock ライブラリ プロジェクト以外の android-support-v4.jar ファイルを削除します。

于 2013-05-18T09:56:49.503 に答える
2

同様の問題が発生しましたが、別の問題により、最新の ActionBarShelock をダウンロードして、wired00 で説明されている問題を修正できません。

既存の ABS バージョンに固執する必要がある場合は、これが機能するかどうかを確認してください。

  1. [ファイル] -> [プロジェクト構造] をクリックします。
  2. モジュールリストに「ActionBarSherlock」が表示されているはずなので、それをクリックします。
  3. 「依存関係」タブをクリックします。そこに Android サポート ライブラリ v4 がない可能性が非常に高いです。
  4. 下部の「+」ボタンをクリックし、android-support-v4 を依存関係として追加します。Eclipse からプロジェクトをインポートした場合、Android Studio は既にサポート JAR ファイルをライブラリとしてインポートしている可能性があり、それを直接使用できます。それ以外の場合は、「jars またはディレクトリ」オプションを使用して、ディレクトリからサポート jar ファイルを選択する必要がある場合があります。
  5. メイン モジュールまたは他のモジュールもサポート ライブラリを使用している場合、「DEX Already Added」エラーが発生した場合は、「Compile」設定を「Provided」に変更する必要がある場合があります。
  6. これで、ABS モバイルをコンパイルできるはずです。「hamcrest」または「junit」コンパイル エラーが発生した場合は、wired00 で言及されているように、ABS プロジェクトの「test」フォルダーを削除できます。
于 2013-05-17T18:51:11.003 に答える
0

私も同じ問題に直面しました。ABS ライブラリのインポートと同様の手順に従います。しかし、私はまだ同じエラーを受けていました。最後に、私はこの問題を解決しました。解決策: ABS ライブラリのインポートと同様の手順を実行した後、

  1. プロジェクトを再コンパイルします (プロジェクトを右クリックし、[Compile Module "YourApp"] をクリックします)。
  2. ライブラリ プロジェクトを再コンパイルします (ライブラリ プロジェクトを右クリックし、[Compile Module "library"] をクリックします)。

それでおしまい..

于 2013-06-25T12:52:05.713 に答える