2012-11-18 10 views
4

Eclipse 프로젝트에 외부 JavaScript 라이브러리를 추가 할 때 .js 파일 (d3.v2.js) 또는 Github에서 가져온 타르볼 마스터를 추가해야합니까?Eclipse 프로젝트에 외부 JavaScript 라이브러리를 추가 하시겠습니까?

Google에서 Google에 알려줍니다. 후속 Google은 Google에 대한 필요성을 상기시킵니다.


디렉토리 트리 :

. 
|-build 
|---classes 
|-src 
|-WebContent 
|---foo.html 
|---META-INF 
|---WEB-INF 
|-----lib 
|---d3 
|-----d3.v2.js 
는 d3.v2.js에 foo.html 파일에서

상대 경로가 있어야한다 : "../d3/d3.v2.js"

  • 하지만, 그렇지 않을 수도 있습니다. 나는 모른다.
  • foo.html에서 d3.v2.js를 참조 할 때마다 아무 일도 일어나지 않습니다. 아무 일도 일어나지 않는다면 브라우저에 시각적으로 나타나는 것은 d3.js가 존재한다는 것을 의미하지 않습니다. > 새로 만들기 - -> 자바 스크립트 소스 파일 -> 고급 -> 링크 파일로

    1. 푸 : '추가'd3.v2.js는 이클립스으로


나는 다음과 같은 조치를 취했다 파일 시스템에서 -> /home/tyler/workspace/foo/d3/d3.v2.js

  • 시도한 경로 5 개. 그들 중 아무도 일하지 (당신은 절대, 상대 사용해야합니까?)

    • SRC = "을/홈/타일러/작업/푸/D3/d3.v2.js"
    • SRC = "../ D3/d3.v2.js "
    • SRC ="/ 푸/D3/d3.v2.js "
    • SRC ="d3.v2.js "
  • 그래서, 삭제 기준 Eclipse의 d3.v2.js에 추가하고 라이브러리로 추가하려고했습니다.

  • Foo -> JavaScript 리소스 -> JavaScript 라이브러리 추가 -> 사용자 라이브러리 - 사용자 라이브러리 구성 -> 새로 만들기 -> "D3"-> .js 파일 추가 -> d3.v2.js (location :/home/타일러/작업/Snotra/D3

  • 시도 경로의 무리.

    • SRC = "d3.v2.js"
    • SRC = "../ D3/d3.v2.js"
    • src = "/ Foo/d3/d3.v2.js"

      1. 린스, 반복.
  • 어떤 아이디어? 이것이 쉽다는 것을 알고 있지만 Eclipse 라이브러리에 JavaScript 라이브러리를 추가하는 기본 사항을 이해하지 못합니다.

    foo.html

    <!DOCTYPE HTML> 
    <html lang="en"> 
        <head> 
         <meta http-equiv="content-type" content="text/html" charset="utf-8" /> 
          <title>Tyler J. Fisher</title> 
          <link rel="stylesheet" href="master.css" /> 
         <script type="text/javascript" src="../d3/d3.v2.js"></script> 
        </head> 
    
        <body> 
         <section id="foo_view"> 
          <script type="text/javascript"> 
              document.write("test"); <!--Works--> 
           var dataset[1,2,3,4,5]; 
           d3.select("body").selectAll("p") <!--Doesn't work--> 
            .data(dataset) 
            .enter() 
            .append("p") 
            .text("RABBLE"); 
         </script> 
        </section> 
        </body> 
    </html> 
    

    document.write ("test"); 공장.

    d3.js 코드는 그렇지 않습니다.

    그래서 (아마도) :

    • 상대 경로는 오프
    • Tomcat6는
    • (인간의 실수로) 제대로 자바 스크립트를 제공하지 않는 (또는 어쩌면 내가 절대 경로를 사용하는 한)해야합니다 이클립스가 자바 스크립트를 제대로 제공하지 못한다. (사람의 실수로)

    답변

    6

    이클립스가 톰캣에 배포 한 내용은 WebContent이다. JS 파일이 WebContent에 없으면 배포 된 웹 응용 프로그램의 일부가 아닙니다.

    Eclipse에서 제공하는 개발, 소스 폴더를 이해해야합니다. 무엇 배포하면이 폴더가 아니라 디렉토리 구조는 Java EE 사양을 준수 :

    • 의 WebContent에서 모든 것이
    • 자바 소스 파일은 컴파일되어 WEB-INF에 저장되어 배포 된 아카이브의 일부입니다/배포 된 아카이브의 클래스
    • 소스 디렉토리의 Java가 아닌 파일은 배포 된 아카이브의 WEB-INF/classes에 복사됩니다.
    • 다른 모든 파일은 배포 된 아카이브의 일부가 아닙니다.
    +0

    d3 폴더를 WebContent로 이동했습니다. src = "d3/d3.v2.js". Tomcat을 통해 배포 할 때 d3은 여전히 ​​출력 형식을 생성하지 않습니다. 브라우저에서 .HTML 파일을로드 할 때 완벽하게 작동합니다. –

    +0

    'http : // localhost : 8080/YourWebApp/d3/d3.v2.js'로 이동할 때 어떻게됩니까? –

    +0

    메시지 : /Snotra/d3/d3.v2.js || 설명 : 요청한 리소스 (/Snotra/d3/d3.v2.js)를 사용할 수 없습니다. Tomcat6이 실행 중입니다. –

    관련 문제