「android maven google mapsの依存関係が見つかりません」という質問をもう1つ追加して申し訳ありませんが、それに関するほとんどの投稿を読み、提案されたすべてのソリューションを適用しても成功しなかったと思います。
Maven を使用して参照されるのではなく、ワークスペースにインポートされた google-play-services_lib プロジェクトと eclipse ビルド パス ライブラリの依存関係を介して参照される、Google マップ V2 依存関係で正常に実行されている Maven Android プロジェクトがあります。
Robolectric を使用して Maven 自動テストを実装しているため、pom を介して google-play-services 依存関係を構成しようとしていますが、pom の最初の行にこのエラーが表示され、クイックフィックスがありません。
dependency=[com.google.android.gms:google-play-services:apklib:7:compile] ワークスペースに見つかりません
私がこれまでに試したことは、多くのグーグル検索の後、各ステップの後に結果を確認しても成功しませんでした:
最初に android-maven-sdk-helper を使用してローカルの .m2 リポジトリに Google Play Services コンポーネントをインストールし (これらの手順に従って)、ローカルにインストールされたバージョンである jar と apklib バージョン 7 への 2 つの依存関係をプロジェクトに追加します (ここのように) 。 . この後、動作するはずでしたが、依存関係エラーが発生しました。
ライブラリ google-play-services_lib への参照を Eclipse ビルド パスから削除します (プロジェクト / 設定 / Android / ライブラリ内)。とにかく、google-play-services_lib プロジェクトはまだワークスペースにあります。
apklib をローカルの m2 リポジトリからワークスペースのどこかにコピーします: google-play-services_lib/bin、google-play-services_lib/libs、MyProject/libs を試しました。名前 google-play-services-7.apklib (リポジトリ ファイルと同様) および google-play-services.apklib を使用してテスト済み。
ワークスペースに含まれる google-play-services_lib プロジェクトを "Mavenise" にし、eclipse Configure / Convert to Maven project を実行します。生成された pom を編集して、パッケージ タイプを apklib: に更新し、apklib パッケージ タイプを認識するために
<packaging>apklib</packaging>
android-maven-plugin を追加しました。<extensions>true</extensions>
プロジェクトをmaven goal compileでコンパイルして成功しましたが、生成されたapklibファイルがどこにも見つかりません。
これらの変更のたびに、Maven / Update プロジェクトを実行し、プロジェクトをクリーンアップし、Eclipse を再起動します。成功しません: 依存関係がスペース エラーで見つかりません。
他に何を試すべきかわかりません。それは図書館名の何かでしょうか?ライブラリ プロジェクト名は google.play-services_lib で、_lib サフィックスが付いています。Eclipse Android ライブラリ ビルド パスで参照される jar は _lib.jar ですが、Maven アーティファクトには _lib サフィックスがありません。また、コンポーネントとアーティファクトの名前を変更しようとしましたが、成功しませんでしたが、そこに問題がある可能性があります。誰かが mavenized google-play-services_lib プロジェクトの pom.xml の例を投稿できますか?
別の推測: mavenized ライブラリ プロジェクトを mvn コンパイルすると、生成された .apklib ファイルが見つからないのはなぜですか? mvn -X compile でトレースを確認しましたが、ヒントは見つかりませんでした。
環境とバージョン:
Eclipse Indigo
External maven 3.0.5 (embedded Maven 3.0.3 not used)
android-maven-plugin 3.6.0
maven-eclipse-plugin 2.8
m2e-android plugin (m2eclipse android integration) 0.4.2
Android API level 13
google-play-services_lib プロジェクトに追加した pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>google-play-services_lib</groupId>
<artifactId>google-play-services_lib</artifactId>
<version>7</version>
<packaging>apklib</packaging>
<properties>
<android-platform>13</android-platform>
<android-emulator>13</android-emulator>
<android-maven-plugin-version>3.6.0</android-maven-plugin-version>
<maven-compiler-plugin-version>3.0</maven-compiler-plugin-version>
<java-version>1.6</java-version>
<local-sdk-path>C:\NoProgramFiles\Android\android-sdk</local-sdk-path>
</properties>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>${android-maven-plugin-version}</version>
<configuration>
<sdk>
<path>${local-sdk-path}</path>
<platform>${android-platform}</platform>
</sdk>
<emulator>
<avd>${android-emulator}</avd>
</emulator>
<deleteConflictingFiles>true</deleteConflictingFiles>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
<extensions>true</extensions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin-version}</version>
<configuration>
<source>${java-version}</source>
<target>${java-version}</target>
</configuration>
</plugin>
</plugins>
</build>