2017-09-25 7 views
0

ここでは、Googleドライブ からファイルをダウンロード(コピー)しようとしていますが、エラーが発生していますが、まだ理解できません。 ソースルートの正しいステートメントについてわかりません from().to(localDrive)apache camelでgoogle-driveからファイルをダウンロードするには、AbstractApiComponentにアクセスできませんか?

public class GdriveCopyFile { 
    public static void main(String ar[])throws Exception{ 

    ArrayList<String> scope = new ArrayList<String>(); 
    scope.add("https://www.googleapis.com/auth/drive.file"); 

    CamelContext context=new DefaultCamelContext(); 
    GoogleDriveConfiguration configuration=new GoogleDriveConfiguration(); 

    configuration.setApplicationName("GdriveCopyFile"); 
    configuration.setClientId(".."); 
    configuration.setClientSecret(".."); 
    configuration.setScopes(scope); 

    configuration.setAccessToken("..); 
    configuration.setRefreshToken(".."); 

     GoogleDriveComponent gDriveCompo=new GoogleDriveComponent(); 
     gDriveCompo.setConfiguration(configuration);  //32 
     context.addComponent("google-drive", gDriveCompo); //33 

     context.addRoutes(new RouteBuilder(){ 
     @Override 
     public void configure()throws Exception{ 

     from("google-drive://drive-files/copy?..").to("file:.."); 

    } 
     }); 
    context.start(); 
    Thread.sleep(10000); 
    context.stop(); 
    }} 

エラー:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project Google-Drive: Compilation
failure: Compilation failure: /home/rajat/workspace/Google-Drive/src/main/java/com/pkgName/gdrive /Google_Drive/GdriveCopyFile.java:[32,16] error: cannot access AbstractApiComponent class file for org.apache.camel.util.component.AbstractApiComponent not found/home/rajat/workspace/Google-Drive/src/main/java/com/pkgName/gdrive/Google_Drive/GdriveCopyFile.java:[33,42] error: incompatible types: GoogleDriveComponent cannot be converted to Component

そして、私は私のコードと間違っているものを、ここでこだわっていますか?

+0

Camelの混在したバージョン、または欠落しているJARのクラスパスに問題がある可能性があります。 –

+0

ありがとうございました。私はそれに取り組んでいます。 –

答えて

0

GoogleDriveComponentの親クラスであるAbstractApiComponentのように見えます。今すぐorg.apache.camel.util.component.AbstractApiComponentはキャメルコアの一部ですので、使用しているCamelのバージョンをよく見てください。

+0

そこに設定された間違ったJARのクラスパスの問題のような臭いがあります。 –

+0

ラクダコアのいくつかの変更を検討していただきありがとうございます私は今バージョンが変更されましたバージョンが2.19.3になっています。ルートを作成できませんでした:ルート(route1)[[google-drive:// drive -files/copy?fileId = 0 ... drive-files/copyのプロパティがないため、[content]から1つ以上が必要です。これは私のルート 'from(" google-drive:// drive-files/copy ?fileId = 0BxLLYotaad42NmpJRTJNQVpZVDQ ")'私は知っていたものを試しました。ここで私は助けが必要です。私はこれに感謝しています。 –

+1

最初に、ファイルをダウンロードしようとしている場合、コピーはしません。 google drive APIのドキュメントを読むと、EOD camelはコアAPI機能の上にある単なるレイヤーです。 'copy'はファイルのコピーを作成し、それをダウンロードしません。私はGoogleドライブコンポーネントを使用していませんが、ドキュメントごとに 'export'エンドポイントは提供していません。たぶん@Claus Ibsenがコメントできるようになるでしょう。 – Gautam

関連する問題