Java 将自定义android eclipse项目导出为maven构建类型

Java 将自定义android eclipse项目导出为maven构建类型,java,android,eclipse,maven,pom.xml,Java,Android,Eclipse,Maven,Pom.xml,目标是将现有的androideclipseproject导出为maven类型。为此,需要下载.m2插件。右键单击project并配置-->转换为Maven project,打开窗口“创建新POM”,其中包括: 问题是,当只有jar/pom/war时,在包装类型中应该选择什么。我认为应该有“apklib”,但当我们在生成pom.xml之后在那里键入它时: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/

目标是将现有的android
eclipse
project导出为maven类型。为此,需要下载
.m2插件
。右键单击project并
配置-->转换为Maven project
,打开窗口“
创建新POM
”,其中包括:

问题是,当只有
jar/pom/war
时,在包装类型中应该选择什么。我认为应该有“
apklib
”,但当我们在生成
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>X.0.0</modelVersion>
  <groupId>Name</groupId>
  <artifactId>Artifact</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>apklib</packaging>
</project>

关于

maven没有内置的打包“apklib”,这可能就是您出错的原因

您还没有指定要使用哪个maven插件来构建android工件,但是假设您的pom需要如下所示(取自他们的)


4.0.0
com.simpligility.android
地狱之光
1.0.0
apk
地狱之光
com.google.android
安卓
4.1.1.4
假如
src
${project.artifactId}
com.jayway.maven.plugins.android.generation2
安卓maven插件
3.8.2
真的
com.jayway.maven.plugins.android.generation2
安卓maven插件
16

如果您的pom.xml还可以,我应该对其进行硬编码,还是有任何方法可以基于自定义的NoMaven项目以任何智能方式生成它?@Kuba-您显然应该更正项目名称/版本以适合您的项目,添加任何依赖的库等,但我粘贴的pom应该作为一个起点。至于IDE,据我所知,没有一个IDE能够真正处理所有maven项目。在某个时候,您偏离了一个简单的项目,并失去了适当的IDE支持。eclipse,IMHO,是maven支持方面最差的IDE之一。我想说的是,你应该学会直接使用maven。从命令行。这些知识对你很有用。
Project build error: Unknown packaging: apklib
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<groupId>com.simpligility.android</groupId>
<artifactId>helloflashlight</artifactId>
<version>1.0.0</version>
<packaging>apk</packaging>
<name>HelloFlashlight</name>

<dependencies>
    <dependency>
        <groupId>com.google.android</groupId>
        <artifactId>android</artifactId>
        <version>4.1.1.4</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

<build>
    <sourceDirectory>src</sourceDirectory>
    <finalName>${project.artifactId}</finalName>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>com.jayway.maven.plugins.android.generation2</groupId>
                <artifactId>android-maven-plugin</artifactId>
                <version>3.8.2</version>
                <extensions>true</extensions>
            </plugin>
        </plugins>
    </pluginManagement>

    <plugins>
        <plugin>
            <groupId>com.jayway.maven.plugins.android.generation2</groupId>
            <artifactId>android-maven-plugin</artifactId>
            <configuration>
                <sdk>
                    <!-- platform as api level (api level 16 = platform 4.1)-->
                    <platform>16</platform>
                </sdk>
            </configuration>
        </plugin>
    </plugins>
</build>
</project>