2016-10-26 81 views
0

これは、Maven、gradleなどです。どうすれば問題を解決できますか?私はJavaのクラスパスに関する質問を読んだ。しかし、パッケージを見つけてプロジェクトの中に組み込む方法を深く理解する必要があります。正確には、このプロジェクトにorg.apache.http.client.methods.HttpGetのように含める方法。エラー:パッケージorg.apache.http.client.methodsが存在しません

これはHelloWorld.javaは出力

HelloWorld.java:2: error: package org.apache.http.client.methods does not exist 
import org.apache.http.client.methods.HttpGet; 
            ^
HelloWorld.java:3: error: package org.apache.http.client does not exist 
import org.apache.http.client.HttpClient; 
          ^
HelloWorld.java:4: error: package org.apache.http.impl.client does not exist 
import org.apache.http.impl.client.HttpClientBuilder; 
           ^
HelloWorld.java:13: error: cannot find symbol 
     HttpClient client = HttpClientBuilder.create().build(); 
     ^
    symbol: class HttpClient 
    location: class HelloWorld 
HelloWorld.java:13: error: cannot find symbol 
     HttpClient client = HttpClientBuilder.create().build(); 
          ^
    symbol: variable HttpClientBuilder 
    location: class HelloWorld 
HelloWorld.java:14: error: cannot find symbol 
     HttpGet request = new HttpGet(url); 
     ^
    symbol: class HttpGet 
    location: class HelloWorld 
HelloWorld.java:14: error: cannot find symbol 
     HttpGet request = new HttpGet(url); 
          ^
    symbol: class HttpGet 
    location: class HelloWorld 
HelloWorld.java:15: error: cannot find symbol 
     request.addHeader("User-Agent", USER_AGENT); 
             ^
    symbol: variable USER_AGENT 
    location: class HelloWorld 
HelloWorld.java:16: error: cannot find symbol 
     HttpResponse response = client.execute(request); 
     ^
    symbol: class HttpResponse 
    location: class HelloWorld 
HelloWorld.java:19: error: cannot find symbol 
     BufferReader rd = new BufferReader(
     ^
    symbol: class BufferReader 
    location: class HelloWorld 
HelloWorld.java:19: error: cannot find symbol 
     BufferReader rd = new BufferReader(
          ^
    symbol: class BufferReader 
    location: class HelloWorld 
HelloWorld.java:20: error: cannot find symbol 
      new InputStreamReader(
       ^
    symbol: class InputStreamReader 
    location: class HelloWorld 
12 errors 

がどのように私はこの問題を解決することができます。これは、コマンド

javac HelloWorld.java 

これで

import java.io.IOException; 
import org.apache.http.client.methods.HttpGet; 
import org.apache.http.client.HttpClient; 
import org.apache.http.impl.client.HttpClientBuilder; 

public class HelloWorld { 
    public static void main (String[] args) throws IOException { 
     Runtime.getRuntime().exec("clear"); 
     System.out.println("Console!!!"); 


     String url = "http://www.example.com"; 
     HttpClient client = HttpClientBuilder.create().build(); 
     HttpGet request = new HttpGet(url); 
     request.addHeader("User-Agent", USER_AGENT); 
     HttpResponse response = client.execute(request); 


     BufferReader rd = new BufferReader(
      new InputStreamReader(
       response.getEntity().getContent() 
      ) 
     ); 


     StringBuffer result = new StringBuffer(); 
     String line = ""; 
     while ((line = rd.readLine()) != null) { 
      result.append(line); 
     } 


     System.out.println(result); 
    } 
} 

ファイルですか?ベンダーコードを追加するにはどうしたらいいですか? org.apache.http.client.methods.HttpGetをどのようにインポートできますか? ...

申し訳ありません、PHPから来ました。 phpには作曲家とpackagistがいます。 Javaの世界では?

+0

[Javaパッケージにはエラーがありません](http://stackoverflow.com/questions/6375179/java-package-does-not-exist-error) –

+0

maven https:// mavenで読むことができます。 apache.org/それは作曲家と同じですが、javaのためです。 –

+0

あなたはそうです!ごめんなさい。 – sensorario

答えて

0

あなたがApacheのHTTPのものを含むjarファイルをダウンロードした場合は、お使いのcommmandラインは、この方法を変更

javac -classpath <the_location_of_the_jar>;. HelloWorld.java 

セミコロンが1つ以上の場所を分離し、ドットは、カレントディレクトリを意味

0

まず、存在するコードには文法エラーがあります: 1)Javaファイルで使用したすべてのクラスをインポートする必要があります; 2) "BufferedReader"のスペルがあります.3)コードのUSER_AGENTに定義がありません。 変更されたコードは次のようになります: package com; import java.io. *;あなたはjavacのを伝える必要がありますので

import org.apache.http.HttpResponse; 
import org.apache.http.client.methods.*; 
import org.apache.http.client.*; 
import org.apache.http.impl.client.HttpClientBuilder; 

public class HelloWorld { 
    public static void main (String[] args) throws IOException { 
     Runtime.getRuntime().exec("clear"); 
     System.out.println("Console!!!"); 


     String url = "http://www.example.com"; 
     HttpClient client = HttpClientBuilder.create().build(); 
     HttpGet request = new HttpGet(url); 
     request.addHeader("User-Agent", "XXXX"); 
     HttpResponse response = client.execute(request); 


     BufferedReader rd = new BufferedReader (
      new InputStreamReader(
       response.getEntity().getContent() 
      ) 
     ); 


     StringBuffer result = new StringBuffer(); 
     String line = ""; 
     while ((line = rd.readLine()) != null) { 
      result.append(line); 
     } 
     System.out.println(result); 
    } 
} 

その後、我々はそのようなのHttpClientやBufferedReaderのなどなど、他のクラスを参照したあなたのcode.yourコードをコンパイルするために使用するのjavacを開始することができる2つの代替で参照するクラスが含まれているjarファイルは意味: 1)システムenv変数 "CLASSPATH"を設定します。値はセミコロンで区切られた値で、参照したすべてのクラスを含むjarのリストです。 2)オプションの値は、私のWindows環境.FOR「CLASSPATH」と同じで、あなたにのjavacコマンドを-classpathオプションを追加し、私は、このコマンドを使用してテスト: C:\Users\Administrator>javac -classpath "C:\Program Files\Java\jdk1.8.0_66\jre\lib;C:\Program Files\Java\jdk1.8.0_66\lib;C:\com\lib\httpclient-4.5.2.jar;C:\c\lib\httpclient-cache-4.5.2.jar;C:\com\lib\httpcore-4.4.4.jar;C:\com\lib\httpclient-win-4.5.2.jar;C:\com\lib\httpmime-4.5.2.jar" c:\com\HelloWorld.java

私は、これはあなたを助けることができる願っています。

関連する問題