找不到 Twitter4j 的 ConfigureBuilder Class

Twitter4j's ConfigureBuilder Class cannot be found

所以我一直在尝试使用 Twitter4j,并且我得到了所有东西,直到我可以编译所有东西。但是有一个错误说 "java.lang.IllegalStateException: consumer key/secret pair already set."

我在下面的几个地方读到我需要 ConfigureBuilder class。但是,每当我尝试编译它时,编译器都会说找不到 ConfigureBuilder。我已经重新下载了 3 次 Twitter4j 文件。

我使用的 IDE 是 BlueJ,如果有帮助的话。

import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.auth.AccessToken;
import twitter4j.*;
import twitter4j.auth.AccessToken;
import java.io.IOException;
import java.net.URL;
import java.util.Arrays;

public class TwitterTyper4j {

static String consumerKeyStr = "";
static String consumerSecretStr = "";
static String accessTokenStr = "";
static String accessTokenSecretStr = "";


public static void main(String[] args) {

    try {
        //twitter confic
       ConfigurationBuilder builder = new ConfigurationBuilder();
      builder.setOAuthConsumerKey(CONSUMER_KEY);
      builder.setOAuthConsumerSecret(CONSUMER_SECRET);
      Configuration configuration = builder.build();


      TwitterFactory tf = new TwitterFactory(cb.build());
      Twitter twitter = tf.getInstance();

      twitter.setOAuthConsumer(consumerKeyStr, consumerSecretStr);
      AccessToken accessToken = new AccessToken(accessTokenStr,
                accessTokenSecretStr);

      twitter.setOAuthAccessToken(accessToken);

      twitter.updateStatus("Hello Twitter");

      System.out.println("Successfully updated the status in       Twitter.");
    } catch (TwitterException te) {
        te.printStackTrace();
    }
}

}

确保您在类路径上有最新版本 twitter-core-x.y.z.jar – 我相信您已经这样做了,但值得检查一下。

然后你需要导入ConfigurationBuilder,例如:

import twitter4j.conf.ConfigurationBuilder;

这应该有望解决 那个 编译错误。尽管您需要修复代码中的其他问题 – 例如,cb 声明在哪里?

编辑:

这有点推测,但假设有错字并且 cbconfiguration 可能相同...

您已经将消费者密码和密钥提供给构建器,然后用于构建 Twitter 实例。

然后在 Twitter 实例上,它已经配置了密钥和秘密,您再次设置它:

twitter.setOAuthConsumer(consumerKeyStr, consumerSecretStr);

请注意该方法的 Javadoc 状态:

@throws IllegalStateException when OAuth consumer has already been set, or the instance is using basic authorization