2015-10-10 46 views
2

我有一些java文件,我想在linux cmd模式下運行它們。在那些java文件中,我使用了aws java sdk,所以我需要爲aws java sdk設置類路徑。下面是我做的:如何在linux cmd中導出AWS SDK(嘗試在linux中編譯java)

export CLASSPATH=/home/ubuntu/loadbalancer/aws-java-sdk-1.10.20/lib/aws- 
java-sdk-flow-build-tools-1.10.20.jar:/home/ubuntu/loadbalancer/aws-java- 
sdk-1.10.20/lib/aws-java-sdk-1.10.23-sources.jar:/home/ubuntu 
/loadbalancer/aws-java-sdk-1.10.20/lib/aws-java-sdk-1.10.20.jar: 
/home/ubuntu/loadbalancer/aws-java-sdk-1.10.20/lib/aws-java-sdk-1.10.20- 
javadoc.jar:/home/ubuntu/loadbalancer 


echo $CLASSPATH /home/ubuntu/loadbalancer/aws-java-sdk-1.10.20/lib/aws- 
java-sdk-flow-build-tools-1.10.20.jar:/home/ubuntu/loadbalancer/aws-java- 
sdk-1.10.20/lib/aws-java-sdk-1.10.23-sources.jar:/home/ubuntu 
/loadbalancer/aws-java-sdk-1.10.20/lib/aws-java-sdk-1.10.20.jar: 
/home/ubuntu/loadbalancer/aws-java-sdk-1.10.20/lib/aws-java-sdk-1.10.20- 
javadoc.jar:/home/ubuntu/loadbalancer 

當我做javac *.java 我得到這個堆棧跟蹤

javac *.java 
LoadBalancer.java:15: package com.amazonaws.auth does not exist 
import com.amazonaws.auth.BasicAWSCredentials; 
^ 
LoadBalancer.java:16: package com.amazonaws.services.ec2 does not exist 
import com.amazonaws.services.ec2.AmazonEC2Client; 
^ 
LoadBalancer.java:17: package com.amazonaws.services.ec2.model does not exist 
import com.amazonaws.services.ec2.model.CreateTagsRequest; 

任何人都可以幫助嗎?

回答

0

旁邊的問題:是否有一個特定的原因,你不能通過適當的依賴管理系統來做到這一點? (例如:maven)。

錯誤告訴你的是,你的應用程序的某些部分引用了不在類路徑中的東西。

實際上你放在類路徑中的jar是在那個位置嗎?我可以在/ home/ubuntu/loadbalancer/aws-java- sdk-1.10中看到至少1個問題。 /lib/aws-java-sdk-1.10。 -sources.jar

+0

感謝您的回覆。我發現我的問題,我沒有將所有的jar文件導入到classpath中。 jar文件和路徑的區別很好! –

0

我發現我的問題,我沒有將所有jar文件導入類路徑。