2016-06-07 6 views
0

IronMQ에서 메시지를 가져오고 Java 프로그램을 통해 메시지를 가져 오려고합니다. 다음 코드를 작성했지만 예외가 발생했습니다. 제발 도와주세요. 사전에Java에서 IronMQ를 통해 메시지를 잡는 방법

감사 :

package com.iron; 

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

import io.iron.ironmq.Client; 
import io.iron.ironmq.Message; 
import io.iron.ironmq.Queue; 
import io.iron.ironmq.Cloud; 

public class Test { 

    public static void main(String[] args) 
    { 
     String ProjectId; 
     String ProjectToken; 
     ProjectId="actual ID in String"; 
     ProjectToken="Project token in string"; 
     Map<String,String> env=System.getenv(); 
     Client client = new Client(env.get(ProjectId), env.get(ProjectToken), Cloud.ironAWSUSEast); 
     Queue queue = client.queue("my_queue"); 
     try 
     { 
      queue.push("hello world!"); 
      Message msg = queue.get(); 
      System.out.println(msg.getBody()); 
     } 
     catch (IOException e) 
     { 
      e.printStackTrace(); 
     } 





    } 


} 

내가 얻을 예외 그것은 나를 위해 작동

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gson/JsonSyntaxException 
    at com.iron.Test.main(Test.java:20)` 
Caused by: java.lang.ClassNotFoundException: com.google.gson.JsonSyntaxException 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 

답변

0
import io.iron.ironmq.Client; 

import io.iron.ironmq.Cloud; 
import io.iron.ironmq.Message; 
import io.iron.ironmq.Queue; 

public class IronMqTest5 { 

    public static void main(String[] args) 
    { 
     String projectId="54567889000c707"; 
     String token="3b3u7uwjwjj8726QZ9CO"; 
     String scheme="https"; 
     String host="mq-aws-us-east-1-2.iron.io"; 
     int port=443; 
     try 
     { 
      Client c = new Client(projectId, token, new Cloud(scheme, host,port)); 
      //Client c = new Client(projectId, token, new Cloud("http", "localhost", 8080), apiVersion); //this is speified on the github doc but not working here 
      Queue q = c.queue("ESIResponse"); 
      Message msg=q.get(); 
      System.out.println(msg.getBody()); 

     } 
     catch(Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } 


} 

내가 자바

에 IronMq에서 내 메시지를 얻을