简体   繁体   English

Maven无法找到适用于Java的AWS开发工具包

[英]maven cant find aws sdk for java

I'm a newbie on Java (with maven), and trying to integrate aws sdk for java with maven. 我是Java(使用Maven)的新手,并尝试将Java的AWS开发工具包与Maven集成。 I'm using Visual code for simplicity, and since its light-weight (plus, other IDE's are super confusing for me). 我使用Visual代码是为了简化,因为它很轻巧(另外,其他IDE对我来说也很混乱)。 Running on Mac OS Sierra. 在Mac OS Sierra上运行。

I've done the below so far: 到目前为止,我已完成以下操作:

1) I already have maven 1)我已经有Maven

$mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T03:41:47+11:00)
Maven home: /usr/local/Cellar/maven/3.3.9/libexec
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac"

2) Created new maven project 2)创建新的Maven项目

mvn archetype:generate 
    -DgroupId=com.domain.javalab 
    -DartifactId=javalab 
    -DarchetypeArtifactId=maven-archetype-quickstart 
    -DinteractiveMode=false

3) Added the below dependancy in pom.xml 3)在pom.xml中添加了以下依赖性

<dependencies>
  <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk</artifactId>
    <version>1.11.271</version>
  </dependency>
</dependencies>

4) Created the below test code (Only including the package and import section for now, for clarity) 4)创建了以下测试代码(为清楚起见,仅包括“打包和导入”部分)

package com.domain.javalab;

import java.io.File;
import java.io.IOException;

import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.PutObjectRequest;
import com.amazonaws.services.s3.model.StorageClass;
... Some Code ...

5) When I try to compile the code, I get "package com.amazonaws does not exist" error. 5)当我尝试编译代码时,出现“包com.amazonaws不存在”错误。 I know it might be silly that some class-path or dependecy missing somewhere, but I just cant figure out where. 我知道某些地方缺少类路径或依赖性可能是很愚蠢的,但是我只是不知道在哪里。

$ javac UploadObjectSingleOperation.java
UploadObjectSingleOperation.java:6: error: package com.amazonaws does not exist
import com.amazonaws.AmazonClientException;
                ^
UploadObjectSingleOperation.java:7: error: package com.amazonaws does not exist
import com.amazonaws.AmazonServiceException;
                ^
UploadObjectSingleOperation.java:8: error: package com.amazonaws.auth.profile does not exist
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
                             ^
UploadObjectSingleOperation.java:9: error: package com.amazonaws.services.s3 does not exist
import com.amazonaws.services.s3.AmazonS3;
.
.

running the 'mvn package' gives me build failure due to the above compilation error I guess. 由于我猜上面的编译错误,运行“ mvn软件包”使我构建失败。

I have even tried to execute the below to copy the dependency jars to local target/dependency folder. 我什至尝试执行以下命令将依赖项jar复制到本地target / dependency文件夹。

$mvn dependency:copy-dependencies

Now I have the aws-sdk jar files in both main maven repository (under .m2/repository/ in user home directory) and under targets/dependency in local project directory. 现在,我在主Maven存储库(用户主目录中的.m2 / repository /下)和本地项目目录中的target / dependency下都具有aws-sdk jar文件。

I'm still trying to figure out the right way to do it. 我仍在尝试找出正确的方法。 Everywhere I searched, it looks like adding the dependency in pom.xml would do the trick. 我到处搜索的地方似乎都可以在pom.xml中添加依赖项。 Or am I missing anything, or out of sequence? 还是我错过了什么,还是顺序不对?

EDIT : Editing the question with version 1.11.271. 编辑 :使用1.11.271版本编辑问题。

Adding pom.xml content below: 在下面添加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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.domain.javalab</groupId>
  <artifactId>javalab</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>javalab</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk</artifactId>
      <version>1.11.271</version>
    </dependency>
  </dependencies>
</project>

My first remark is that the version 1.11.272 does not exist. 我的第一句话是版本1.11.272不存在。 see here 看这里

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM