2016-10-26 5 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 있습니다. 자바 세계에서? 당신이 아파치 HTTP 물건을 포함하는 jar 파일을 다운로드 한 경우

+0

[Java 패키지가 존재하지 않음 오류] (http://stackoverflow.com/questions/6375179/java-package-does-not-exist-error) –

+0

maven https : // maven에서 읽으십시오. apache.org/ 작곡가와 동일하지만 java와 동일합니다. –

+0

맞아! 죄송합니다. – sensorario

답변

0

,는 점은 현재 디렉토리를

0

첫째을 의미하며,이 방법

javac -classpath <the_location_of_the_jar>;. HelloWorld.java 

세미콜론은 하나 개 이상의 지역을 분리하여 Section 명령 라인을 변경 당신은 현재 구문 오류가 있습니다 : 1) 자바 파일에서 사용한 모든 클래스를 가져와야합니다; 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의를 시작할 수있는 두 개의 대안으로 언급 된 클래스가 들어있는 항아리는 의미 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

나는이 당신을 도울 수 있기를 바랍니다.

관련 문제