2015-02-05 8 views
0

Я пытаюсь запустить код java ниже в groovy. Я считаю, что я правильно импортировал класс и добавил необходимые файлы jar в путь к классам. Тем не менее, я все еще получаю ошибки компиляции.Преобразование java в groovy

Java код:

package com.tradeking; 

this.class.classLoader.rootLoader.addURL(new URL("file:///C:/Program Files (x86)/Groovy/Groovy-2.4.0/lib/commons-codec-1.10.jar")) 
this.class.classLoader.rootLoader.addURL(new URL("file:///C:/Program Files (x86)/Groovy/Groovy-2.4.0/lib/scribe-1.3.7.jar")) 

import org.scribe.builder.*; 
import org.scribe.model.*; 
import org.scribe.oauth.*; 
import org.scribe.builder.api.DefaultApi10a; 
import org.scribe.model.Token; 



public class TradeKingApi extends DefaultApi10a 
{ 
    private static final String CONSUMER_KEY = "***"; 
    private static final String CONSUMER_SECRET = "***"; 
    private static final String OAUTH_TOKEN = "***"; 
    private static final String OAUTH_TOKEN_SECRET = "***"; 

private static final String PROTECTED_RESOURCE_URL = "https://api.tradeking.com/v1/market/ext/quotes.xml"; 

public static void main(String[] args) 
{ 
    OAuthService service = new ServiceBuilder() 
          .provider(TradeKingApi.class) 
          .apiKey("***") 
          .apiSecret("***") 
          .build(); 
    Token accessToken = new Token("***", "***"); 

    } 
} 

Когда я бегу выше, я получаю следующие ошибки:

3 compilation errors: 

Abstract method 'java.lang.String getRequestTokenEndpoint()' is not implemented but a method of the same name but different return type is defined: method 'java.lang.String getRequestTokenEndpoint()' 
at line: -1, column: -1 

Abstract method 'java.lang.String getAuthorizationUrl(org.scribe.model.Token)' is not implemented but a method of the same name but different return type is defined: method 'java.lang.String getAuthorizationUrl(org.scribe.model.Token)' 
at line: -1, column: -1 

Abstract method 'java.lang.String getAccessTokenEndpoint()' is not implemented but a method of the same name but different return type is defined: method 'java.lang.String getAccessTokenEndpoint()' 
at line: -1, column: -1 

Спасибо за любые подсказки или предложения.

+2

_what_ не работает? ошибки? следы? ... – cfrick

+0

Когда я запустил выше, я получаю следующую ошибку: 1 ошибка компиляции: не удалось разрешить класс DefaultApi10a в строке: 7, column: 4 – user3806824

+0

, пожалуйста, отредактируйте вопрос и добавьте там сообщение об ошибке. также предоставляют полную трассировку, если она доступна, а также пытаться комментировать в исходном коде, в каких строках/столбцах ссылается трассировка. – cfrick

ответ

0

согласно https://github.com/fernandezpablo85/scribe-java/blob/master/src/main/java/org/scribe/builder/api/DefaultApi10a.java необходимо импортировать этот класс должным образом.

+0

Спасибо за ссылку. Я рассмотрю код, а также ссылки на javadocs. – user3806824

0

Похоже, что во время компиляции у вас есть проблема с классом.

Это означает, что компилятор не может найти определение класса, которое вы пытаетесь расширить DefaultApi10a.

Быстрый google сообщает мне, что этот класс находится в пакете org.scribe.builder, который вы импортировали в верхней части своего класса.

Вам нужно добавить файлы jar в путь к классам вашей сборки, чтобы компилятор смог разрешить импортированные классы.

+0

Спасибо за ваши мысли. Я добавил две строки кода моей программы, чтобы добавить необходимые файлы jar в путь класса. Тем не менее, я все еще получаю ту же ошибку. «Не удалось разрешить класс DefaultApi10a» – user3806824

+0

Я считаю, что исправил проблему с DefaultApi10a. Теперь возникают разные ошибки. Обновленный журнал выше. – user3806824

+0

Похоже, что теперь вы разрешаете класс, однако класс определяет абстрактные методы, которые должны быть реализованы вашим классом. – crowne

Смежные вопросы