我四处寻找解决方案,但我被难住了。
我尝试从 google-cloud-dataflow-java-sdk-all 原型(prototype)进行构建,但在 IntelliJ 中并使用 mvn install
继续出现相同的错误在命令行上使用 POM。从命令行使用 mvn archetype:generate ...
也会得到相同的错误。
Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate (default-cli)
on project standalone-pom: The defined artifact is not an archetype -> [Help 1]
希望其他人看到了这个。
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>
<parent>
<groupId>com.google.cloud.dataflow</groupId>
<artifactId>google-cloud-dataflow-java-sdk-parent</artifactId>
<version>2.0.0</version>
</parent>
<artifactId>google-cloud-dataflow-java-sdk-all</artifactId>
<name>Google Cloud Dataflow SDK for Java - All</name>
<description>Google Cloud Dataflow SDK for Java is a distribution of Apache
Beam designed to simplify usage of Apache Beam on Google Cloud Dataflow
service. This artifact includes entire Dataflow Java SDK.</description>
<packaging>jar</packaging>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
<dependencies>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-io-google-cloud-platform</artifactId>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-runners-direct-java</artifactId>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-runners-google-cloud-dataflow-java</artifactId>
</dependency>
</dependencies>
</project>
mvn 生成:原型(prototype)命令:
mvn archetype:generate \
-DarchetypeArtifactId=google-cloud-dataflow-java-sdk-all \
-DarchetypeGroupId=com.google.cloud.dataflow \
-DarchetypeVersion=2.0.0 \
-DgroupId=com.rgault.google \
-DartifactId=dataflow \
-DinteractiveMode=false \
-Dpackage=com.rgault.google \
-Dversion=0.1
最佳答案
您尝试使用的原型(prototype)实际上不是原型(prototype),而是 all-in-one dependency bundle :
Google Cloud Dataflow SDK For Java All » 2.0.0
Google Cloud Dataflow SDK for Java is a distribution of Apache Beam designed to simplify usage of Apache Beam on Google Cloud Dataflow service. This artifact includes entire Dataflow Java SDK.
根据these docs ,正确的原型(prototype) ID 是 google-cloud-dataflow-java-archetypes-examples
:
Create a Maven Project that contains the Cloud Dataflow SDK for Java and Examples
- Create a Maven project containing the Cloud Dataflow SDK for Java using the Maven Archetype Plugin. Run the
mvn archetype:generate
command in your shell or terminal as follows:
JAVA: SDK 1.X
mvn archetype:generate \ -DarchetypeArtifactId=google-cloud-dataflow-java-archetypes-examples \ -DarchetypeGroupId=com.google.cloud.dataflow \ -DarchetypeVersion=1.9.0 \ -DgroupId=com.example \ -DartifactId=first-dataflow \ -Dversion="0.1" \ -DinteractiveMode=false \ -Dpackage=com.exampleJAVA: SDK 2.X
mvn archetype:generate \ -DarchetypeArtifactId=google-cloud-dataflow-java-archetypes-examples \ -DarchetypeGroupId=com.google.cloud.dataflow \ -DarchetypeVersion=2.0.0 \ -DgroupId=com.example \ -DartifactId=first-dataflow \ -Dversion="0.1" \ -DinteractiveMode=false \ -Dpackage=com.example
关于java - Maven 构建在 IntelliJ 内部和命令行上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45024496/