Open sleevefone opened 9 months ago
自己改呗,也不难
我也是这个问题,看了很多回复,好像是maven版本太高或者太低都不行,3.5.x好像可以
这个要怎么改?
用idea中的maven来进行编译
MAVEN 3.5.x版本一把过 其他版本都不行
assembly:assembly 是 maven-assembly-plugin 2.x 的编译目标,3.x 版本没有这个,取而代之的是 assembly:single。
而 package.xml 中的 id 属性,在 2.2 的正式版本后,就成了必填项了,不能为空值,所以,你应该使用 maven-plugin-plugin-2.2 的 Beta 或 RC 版本,比如 2.2-beta-5。为何不使用 2.1 版本,是因为 datax 在 package.xml 中,使用了一个只能在 2.2 或更高的版本中才能识别的属性 useProjectArtifact。
用现成的tar.gz 包,无需 maven, 只需要java即可运行
assembly:assembly 是 maven-assembly-plugin 2.x 的编译目标,3.x 版本没有这个,取而代之的是 assembly:single。
而 package.xml 中的 id 属性,在 2.2 的正式版本后,就成了必填项了,不能为空值,所以,你应该使用 maven-plugin-plugin-2.2 的 Beta 或 RC 版本,比如 2.2-beta-5。为何不使用 2.1 版本,是因为 datax 在 package.xml 中,使用了一个只能在 2.2 或更高的版本中才能识别的属性 useProjectArtifact。
就是这个问题对于高版本 maven (如 3.6.X、3.9.X), 根pom.xml maven-assembly-plugin需要指定版本
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-3</version>
...
</plugin>
<plugins>
1:maven 版本:3.9.3, 2:odpsreader模块下,import com.aliyun.odps.data. 与import com.alibaba.datax.common.element. 的 Record 类冲突
3:改动了很多代码以后,添加了很多 package.xml种的 id 名称后,mvn clean install-DskipTests 命令成功,执行命令mvn clean package -DskipTests assembly:assembly报错, assembly 在 maven-assembly-plugin 3.6.0,报错如下: [ERROR] Could not find goal 'assembly' in plugin org.apache.maven.plugins:maven-assembly-plugin:3.6.0 among available goals help, single -> [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/MojoNotFoundException