2013-09-21 1 views
1

Android에서 Twitter4j에서 많은 오류가 발생했지만 Android 용으로 사용하지 않았습니다. 나는 그것을 Bukkit (Minecraft Plugin)에 사용하고있다. 내 프로젝트에 twitter4j 코어-3.0.3.jar를 추가 할 때 서버 콘솔에서로드 할 때 어떤 이유로, 나는 오류가 발생합니다 :Minecraft Server의 Bukkit이 포함 된 타사 jar (Twitter4J)

내가 자바에 새로운 오전부터
[SEVERE] Could not load 'plugins\Test.jar' in folder 'plugins' 

org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: twitter4j/TwitterException 
     at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184) 
     at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) 
     at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) 
     at org.bukkit.craftbukkit.v1_6_R2.CraftServer.loadPlugins(CraftServer.java:239) 
     at org.bukkit.craftbukkit.v1_6_R2.CraftServer.<init>(CraftServer.java:217) 
     at net.minecraft.server.v1_6_R2.PlayerList.<init>(PlayerList.java:56) 
     at net.minecraft.server.v1_6_R2.DedicatedPlayerList.<init>(SourceFile:11) 
     at net.minecraft.server.v1_6_R2.DedicatedServer.init(DedicatedServer.java:106) 
     at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:391) 
     at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582) 
Caused by: java.lang.NoClassDefFoundError: twitter4j/TwitterException 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Unknown Source) 
     at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173) 
     ... 9 more 
Caused by: java.lang.ClassNotFoundException: twitter4j.TwitterException 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80) 
     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     ... 12 more` 

, 정말지고 있지 않다 내가 여기서 잘못하고있는 것. ?이 내 코드 (필자는 플러그인이로드에 실패하기 때문에 이것이 문제라고 생각하지 않습니다 ...입니다!

   String TWITTER_CONSUMER_KEY = "XXXXXXXX"; 
      String TWITTER_SECRET_KEY = "XXXXXX"; 
      String TWITTER_ACCESS_TOKEN = "XXXXXXXXXX"; 
      String TWITTER_ACCESS_TOKEN_SECRET = "XXXXXX"; 

      ConfigurationBuilder cb = new ConfigurationBuilder(); 
      cb.setDebugEnabled(true).setOAuthConsumerKey(TWITTER_CONSUMER_KEY).setOAuthConsumerSecret(TWITTER_SECRET_KEY).setOAuthAccessToken(TWITTER_ACCESS_TOKEN).setOAuthAccessTokenSecret(TWITTER_ACCESS_TOKEN_SECRET); 
      TwitterFactory tf = new TwitterFactory(cb.build()); 
      Twitter twitter = tf.getInstance(); 
      try { 
       Query query = new Query(Username); 
       QueryResult result; 
       do { 
        result = twitter.search(query); 
        List<Status> tweets = result.getTweets(); 
        for (Status tweet : tweets) 
        { 
         String rawJSON = DataObjectFactory.getRawJSON(tweet); 
         try 
         { 
          BufferedWriter out = new BufferedWriter(new FileWriter((getDataFolder() + File.separator + "TwitterData.txt"))); 
          out.write(rawJSON); 
          out.close(); 
         } 
         catch (IOException ioe) 
         { 
          ioe.printStackTrace(); 
          System.out.println("Failed to store tweets: " + ioe.getMessage());   
         } 

        } 
       } 
       while ((query = result.nextQuery()) != null); 
       System.exit(0); 
      } 
      catch (TwitterException te) 
      { 
       te.printStackTrace(); 
       System.out.println("Failed to search tweets: " + te.getMessage()); 
       System.exit(-1); 
      } 

왜 Twitter4j가 제대로로드되지 감사

편집 : 또한, twitter4j 코어-3.03.jar가. 내 컴퓨터의 다른 디렉토리에 자바 프로그램이 필요로

+0

프로젝트에서 .jar을 삭제 해보십시오. 프로젝트에 최상위 레벨의 libs라는 폴더를 만듭니다 (이미있는 경우는 안 됨) .jar를 복사하여 libs 폴더에 붙여 넣으십시오. – hichris123

+0

나는 그것을 시도했지만 여전히 같은 오류가 발생한다. @ hichris123 –

+0

확실하지 않다. 그것이 작동하도록하는 유일한 방법입니다. – hichris123

답변

1

모든 항아리는 서버의 클래스 경로에있을 필요가있는 문제?입니다. 이것은 귀하의 경우 Twitter4J가 포함되어 있습니다.

관련 문제