라이브러리 프로젝트를 만들고 packing
을 apklib
으로 만듭니다.maven apklib를 사용할 때 컴파일 오류가 발생했습니다.
<dependency>
<groupId>com.ati</groupId>
<artifactId>common-lib</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>apklib</type>
</dependency>
내가 좋아하는 내 응용 프로그램 프로젝트에 lib 디렉토리를 사용합니다 : com.ati.common_lib.Test.demo();
및 mvn clean install
를 사용하는 응용 프로그램에서 나는 depedency을 추가했습니다. 그것은 효과가있다! 하지만 import com.ati.common_lib;
및 Test.demo();
및 mvn clean build
를 사용하는 경우 그것은 내가 받는다는 3.0.5을 사용하고있는 오류
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project soci-news: Compilation failure: Compilation failure:
[ERROR] /Data/Work/workspace/soci-parent/soci-news/src/main/java/com/ati/soci_news/HelloAndroidActivity.java:[9,15] cannot find symbol
[ERROR] symbol : class common_lib
[ERROR] location: package com.ati
[ERROR] /Data/Work/workspace/soci-parent/soci-news/src/main/java/com/ati/soci_news/HelloAndroidActivity.java:[23,9] cannot find symbol
[ERROR] symbol : variable Test
[ERROR] location: class com.ati.soci_news.HelloAndroidActivity
[ERROR] -> [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/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :soci-news
을 던져 m2e-안드로이드와 "케플러 버전을"일식. 라이브러리 및 응용 프로그램은 m2e-android에서 만들었습니다. 여기서 내가 뭘 잘못하고 있니?
UPDATE
내 부모의 pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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>com.ati</groupId>
<artifactId>soci-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Soci project parent</name>
<modules>
<module>common-lib</module>
<module>soci-news</module>
</modules>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>2.2.1</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<sdk>
<platform>8</platform>
</sdk>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
내 라이브러리의 pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.ati</groupId>
<artifactId>soci-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.ati</groupId>
<artifactId>common-lib</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>apklib</packaging>
<name>common lib for ati android application</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<platform.version> 2.2.1
</platform.version>
<android.plugin.version>3.6.1</android.plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
</project>
내 애플의 pom.xml 파일
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.ati</groupId>
<artifactId>soci-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.ati</groupId>
<artifactId>soci-news</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>apk</packaging>
<name>soci-news</name>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.ati</groupId>
<artifactId>common-lib</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>apklib</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
</project>
모든 POM을 볼 수 있습니까? – alex
HelloAndroidActivity를 찾을 수 없습니다. 당신이 그것을 사용한다면 그것을 사용할 수 있는지 확인하십시오. –
@alex : 내 질문을 업데이트했습니다. – hieuxit