试图让我的.java文件在AWS中的EC2实例上编译时遇到了一些困难。我在本地创建文件,它在那里运行得很好。然后,我将.java文件移动到EC2实例中,并尝试用以下方法编译它:
javac imageRecognition.java
但我最后还是犯了这样的错误:
imageRecognition.java:5: error: package com.amazonaws.regions does not exist
import com.amazonaws.regions.Regions;
^
imageRecognition.java:6: error: package com.amazonaws.services.rekognition does not exist
import com.amazonaws.services.rekognition.AmazonRekognition;
我假设这是因为EC2实例上没有包,但我不知道如何下载/放在哪里。或者如果有什么完全不同的事情我需要做。任何帮助都将不胜感激。
注意:我有来编译EC2实例上的文件,我不能在实例上移动可执行的.jar等等。
发布于 2020-09-17 09:26:06
如果要使用javac,则需要将jar放在类路径上,可以从AWS SDK Java下载。然而,这是一种非常古老的方法,您可能会陷入依赖地狱,因为它需要其他库。如果我是你,我会检查一个像Maven或Gradle这样的构建工具,它有助于这类事情。
发布于 2020-09-17 10:28:12
看起来您的EC2实例中缺少AWS包。您可以尝试使用AWS代码管道特性来获取代码构建和部署。
使用代码构建来构建包,使用代码部署将可执行文件部署到EC2中。或者使用任何其他CI/CD来构建和部署代码。
发布于 2020-09-17 18:40:44
最好用maven或gradle。为此,我在我的例子中使用了maven,并添加了AWS依赖项如下:
<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk -->
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.863</version>
</dependency>
然后简单地安装maven并运行mvn install
https://stackoverflow.com/questions/63943141
复制相似问题