![](/img/trans.png)
[英]When executing proguard-maven-plugin, "CreateProcess error=206, The filename or extension is too long" occurs
[英]Maven error '206 the filename or extension is too long' after adding aws-java-sdk dependency
目前我有一个 Maven 项目,在添加以下依赖项后: https : //mvnrepository.com/artifact/com.amazonaws/aws-java-sdk到 pom.xml 文件,我似乎看到以下异常: CreateProcess error=206, The filename or extension is too long
执行包含public static void main
:
public class Connection_Test {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
我目前已通过以下方式移动了 .m2 存储库(我使用的是 Windows 10):
- 将 .m2 存储库移动到 c:\\
- 通过包含以下内容的 inteliJ 创建 settings.xml:
<settings>
<localRepository>c:/.m2/repository</localRepository>
</settings>
即使进行了上述设置/更改,我仍然遇到同样的问题,不知道为什么在添加 aws-java-sdk 依赖项后我似乎遇到了这个问题,有什么想法吗?
问题似乎在于通过 pom.xml 文件导入 aws java 库的方式。 我见过做这样的事情的文档和项目:
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.12.1</version>
</dependency>
</dependencies>
但是,现在 aws-java-sdk 下似乎有很多子项目,列出它们都打破了 Windows 10 上的最大长度类路径。
与其导入整个 AWS 开发工具包,不如只导入您需要的部分。 上有一些好的文档在这里。
要一次导入一个 SDK 组件,您需要先在 pom.xml 文件的 DependencyManagement 部分启用 aws-java-sdk-bom(物料清单)。 像这样:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-bom</artifactId>
<version>1.12.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
然后,要引入 S3,您必须将 aws-java-sdk-s3 列为它自己的依赖项。
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.