2

Maven で構築されていない Android ライブラリ (カスタマイズされた、統合された zxing バーコード スキャナー ライブラリ) があります。そこで、mvn install:install-file を使用して apklib をローカルの Maven リポジトリに作成しようとしました。

したがって、私は実行します:

mvn install:install-file -Dfile=zxing-integrated-1.0.apklib \
                         -DgroupId=com.google.zxing \
                         -DartifactId=zxing-integrated \
                         -Dversion=1.0 \
                         -Dpackaging=apklib \
                         -DgeneratePom=true \
                         -DcreateChecksum=true

コマンドラインで次を返します。

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-install-plugin:2.3.1:install-file (default-cli) @ standalone-pom ---
[INFO] Installing /Users/myuser/Projects/myproject/zxing/zxing-integrated-1.0.apklib to /Users/myuser/.m2/repository/com/google/zxing/zxing-integrated/1.0/zxing-integrated-1.0.apklib
[INFO] Installing /var/folders/s0/0qcqwh696150dhq_lb0l3pd80000gn/T/mvninstall735817733736670848.pom to /Users/myuser/.m2/repository/com/google/zxing/zxing-integrated/1.0/zxing-integrated-1.0.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.488s
[INFO] Finished at: Thu Feb 21 11:27:23 CST 2013
[INFO] Final Memory: 7M/94M
[INFO] ------------------------------------------------------------------------

ただし、maven リポジトリにapklib ファイルが作成されていません。そこにあるのは次のとおりです。

ここに画像の説明を入力

上記の install-file コマンドの何が問題なのだろうか。これは、apklib をビルドしようとしている lib プロジェクトのプロジェクト構造です。これは、通常の Android プロジェクト構造に従います (Android Maven プロジェクト構造ではなく、正しい方法であると想定しています)。

ここに画像の説明を入力

pom.xml に含まれるメイン プロジェクトの mvn install を実行すると、次のようになります。

    <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>zxing-integrated</artifactId>
        <version>1.0</version>
        <type>apklib</type>
    </dependency>

私は得ています:

> mvn install
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building com.myproject.subname.android 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: https://oss.sonatype.org/content/repositories/snapshots/com/google/zxing/zxing-integrated/1.0/zxing-integrated-1.0.jar
Downloading: http://repo1.maven.org/maven2/com/google/zxing/zxing-integrated/1.0/zxing-integrated-1.0.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10.128s
[INFO] Finished at: Thu Feb 21 11:13:20 CST 2013
[INFO] Final Memory: 11M/137M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project com.myproject.subname.android: Could not resolve dependencies for project com.myproject:com.myproject.subname.android:apk:1.0-SNAPSHOT: Could not find artifact com.google.zxing:zxing-integrated:jar:1.0 in snapshots-repository (https://oss.sonatype.org/content/repositories/snapshots) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
4

1 に答える 1

3

maven install-file ゴールは、既存のファイルをローカル リポジトリにアップロードするだけです。ファイルは作成されません。zxing-integrated-1.0.apklibコマンドでアップロードできるように、既存のファイルが必要です。

于 2013-02-21T07:34:41.307 に答える