2016-03-05 19 views

回答

2

這很簡單

步驟1:使用樣板「Java DB Web Starter」在bluemix中創建一個項目。確保您的應用程序名稱是唯一的,並檢查您是否有足夠的可用內存(512 MB)

步驟2:在應用程序的Overview頁面上,單擊Add Git Repo和Pipeline,或者在Bluemix Classic Experience中,單擊ADD GIT。它會爲您的項目代碼生成一個GIT URL。生成的項目代碼已經使用maven,當您提交新代碼時,Bluemix將自動部署它。

第3步:使用eclipse克隆Git倉庫,並打開該項目的pom.xml,並添加「的Java SDK」和「公共-io的」依賴這樣

<dependency> 
     <groupId>com.ibm.watson.developer_cloud</groupId> 
     <artifactId>java-sdk</artifactId> 
     <version>2.8.0</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-io</groupId> 
     <artifactId>commons-io</artifactId> 
     <version>2.4</version> 
    </dependency> 

這將觸發行家你的eclipse項目,它會開始下載大約30 MB的庫。如果你之前沒有這樣做,去喝點咖啡。這將需要5分鐘的時間來下載和解決所有的依賴關係。

第4步:添加到您的Bluemix項目(使用Bluemix Web UI)Alchemy組件。這會將Alchemy API憑證添加到您的Bluemix App VCAP_SERVICES系統變量。

第5步:在Eclipse中,添加一個這樣的代碼

package qi.watson; 

import java.io.File; 
import java.io.IOException; 
import java.util.HashMap; 
import java.util.Map; 

import org.apache.commons.io.FileUtils; 

import com.ibm.watson.developer_cloud.alchemy.v1.AlchemyLanguage; 
import com.ibm.watson.developer_cloud.alchemy.v1.model.DocumentSentiment; 
import com.ibm.watson.developer_cloud.util.CredentialUtils; 

public class AlchemyAPI { 

    private AlchemyLanguage al = new AlchemyLanguage(); 

    public AlchemyAPI() throws IOException{ 
     String env = System.getenv("VCAP_SERVICES"); 
     if (env == null){ 
      env = FileUtils.readFileToString(new File("/home/leoks/git/qi/qi.json")); 
     } 

     CredentialUtils.setServices(env); 

     al.setApiKey(CredentialUtils.getAPIKey("alchemy_api")); 
    } 

    public static void main(String[] args) throws IOException, InterruptedException { 
     AlchemyAPI api = new AlchemyAPI(); 
     Map<String, Object> params = new HashMap<String, Object>(); 
     params.put(AlchemyLanguage.TEXT, "All work and no play makes Jack a dull boy"); 
     DocumentSentiment sentiment = api.al.getSentiment(params); 
     System.out.println(sentiment.getSentiment().getScore()); 
     System.out.println(sentiment.getSentiment().getType()); 
    } 
} 

第6步:在Bluemix的Web UI,點擊您的應用程序,並在左側菜單中找到一節「環境變量」。複製VCAP_SERVICES中的內容並粘貼到您的eclipse項目中的本地文本文件(例如/ home/leoks/git/Qi/Qi.json)中需要幾分鐘才能激活,並且您只能在Bluemix中使用1個Alchemy API模塊。

有關沃森API的Java包裝的更多信息,檢查此鏈接 - https://github.com/watson-developer-cloud/java-sdk

+0

嗨,你能具體談談如何,我可以把應用程序bluemix.Which方法更簡單的方法?是使用eclipse插件還是CF push.Wil我能夠使用localHost在eclipse上運行應用程序嗎?我如何在eclipse中測試我的應用程序? –

+0

我使用eclipse插件時有些不好,但是,我聽說它有顯着的改進。 CF更可靠但不太方便。現在,我將更改推送到Bluemix中,從樣板(例如,Java DB啓動器)創建項目,然後爲其添加一個GIT存儲庫(右上角有一個按鈕可以完成此操作,並且生成的項目已附帶Maven支持) ,從eclipse中克隆存儲庫,然後提交更改。每次將更改提交到GIT時,默認情況下,Bluemix都會觸發構建過程並重新啓動應用程序。 – Leo

+0

爲了在eclipse中本地測試您的應用程序,您可以使用CredentialsUtils類(它附帶在java-sdk依賴項中)。它從VCAP_SERVICES系統變量中讀取證書,但您可以輕鬆添加回退以從本地文件中讀取相同的信息。設置完成後,您可以在本地eclipse中從Bluemix之外調用所有的Watson API。 – Leo