2010-02-23 12 views
19

내 응용 프로그램에 광범위한 JavaDoc 문서를 작성하고 overview.htmlpackage.html 개의 파일에 유용한 정보가 많이 추가되었습니다 (예 : doc-files/의 일러스트레이션 링크 포함). Maven의 Javadoc 플러그인은 표준 javadoc 툴을 사용하여 고전적인 JavaDoc 프레임 세트를 생성하지만, 이제는 전체 문서로 PDF를 생성해야합니다.JavaDoc에서 PDF를 생성하는 방법 (개요 및 패키지 요약 포함)

AurigaDoclet은 매우 예쁜 PDF를 생성하며, DocFlex도 만들 수있었습니다. 그러나 내 overview.htmlpackage.html 파일을 모두 무시합니다. (Maven의 내부와 외부에서 모두 시도해 보았습니다. PDF는 단 한 번의 것입니다. 왜냐하면 장기적으로 HTML을 사용하기 때문입니다).

누구나 AurigaDoclet이 Java 파일이 아닌 파일을 인식하도록 만드는 방법을 알고 있습니까? 또는 소스 코드 또는 JavaDoc 생성 HTML에서보기 좋은 PDF를 생성하는 다른 방법이 있습니까?

감사합니다.

답변

22

Nailed it. 가능한 모든 도구를 소스에서 곧바로 생성하려고 시도한 후 HTMLDOC으로 돌아 왔습니다. JavaDoc을 인식하지는 못하지만 너무 잘 만들어서 꽤 유용한 PDF를 생성 할 수 있습니다. 여기

은 내가했던 방법을 단계별로 설명 간다 :

  1. 다운로드 소프트웨어의 무료 빌드 (공식 사이트 버전은 라이센스가 필요하지만 GPL-ED, 그래서 당신 Windows 용 간단하고 기능적인 설치 프로그램 인 this one과 같은 무료 바이너리를 찾을 수 있습니다.

  2. 원하는 방식으로 전통적인 HTML 문서를 생성하십시오 (Ant, Maven, 명령 행 javadoc - 선택 사항).

  3. GUI는 좋지만 수동으로 모든 파일을 추가하는 것은 번거롭기 때문에 문서 유형이 "웹 페이지"로 설정된 .book 파일을 만들고 생성 된 javadoc의 루트 폴더 (예 : , overview-summary.html, 누구나 할 수 있습니다. 5 단계에서 참조 용입니다). 출력 탭에서 PDF 형식을 선택하고 이름을 설정하고 다른 옵션을 마음의 내용 (로고, 색상, 여기 멋진 정보)에 추가하십시오. 이 프로젝트를 저장하고 (예 : myjavadocpdf.book) GUI를 닫습니다.

  4. javadoc의 모든 HTML 파일 목록을 생성하십시오. 나는 Cygwin의 find 명령 (내 DOS/cmd 쉘 날짜는 오래 끝났습니다)으로했지만 파일 목록을 얻는 한 원하는 모든 작업을 수행 할 수 있습니다. 제 경우에는 find . | grep html$ | sort -r > files.txt이 트릭을했습니다. Windows 사용자의 경우 dir /s/b *.html > files.txt은 동일한 작업을 수행해야합니다 (단, 다음 단계에서 이와 같이 표시되는 경우 \/으로 바꿔야 할 수도 있습니다).

  5. 좋아하는 순수 텍스트 편집기에서 3 단계에서 생성 한 .book 파일을 엽니 다. 프로그래머는 강력한 의견을 가지고 있어야합니다. 내 의견을 계속 남겨 둡니다. NOT ;-)) 생성 된 목록을 추가하십시오. 4 단계에서이 .book 파일 (끝 부분에 파일 목록을 유지하여 생활을 매우 편하게 만듭니다.).필요한 경우 상대 경로를 수정하는 것을 잊지 말고 글로벌 검색/바꾸기 (htmldoc가 예상하는 파일 경로 패턴을 확인하기 위해 최소한 3 단계에서 하나 이상의 파일을 추가해야했습니다.);

  6. 이제 편리한 순서로 파일을 정렬해야합니다. 먼저 개요를 작성한 다음 패키지 설명과 각 클래스를 작성한 다음 전체 색인과 그 밖의 모든 항목을 작성합니다. 삭제 한 파일은 외부 링크 (깨진 링크)가되므로 현명하게 선택하십시오.

  7. .book 파일을 저장하고 HTMLDOC에서 다시 엽니 다. Voila : 모든 파일이 추가되고 정렬되었습니다. 생성을 클릭하십시오. 그게 다야!

이미지로 자극을 가할 수 있습니다 (힌트 : 스타일/CSS가 아닌 HTML 너비/높이 사용). 결과적으로 결과 파일은 놀랍게도 훌륭합니다. 내부 및 외부 링크를 완벽하게 탐색 할 수 있습니다. 인상적인 도구가 Java (Doc)를 전혀 인식하지 못한다고 생각하면 ...

+3

, 패키지는 http://code.google.com/p/에서 다운로드 할 수 있습니다. rudix/wiki/htmldoc. GUI가 없으므로 [.book 파일의 예] (http://sunsite.ualberta.ca/Documentation/Misc/htmldoc-1.8.23/htmldoc.book) 및 그것을 수정 한 다음 'htmldoc --batch htmldoc'명령을 사용하십시오.book'을 사용하여 – emerix

+2

FYI에서 mac 버전 바이너리를 찾을 수있었습니다. http://rudix.org/packages/htmldoc.html 요세미티에 GUI가 있음을 알리십시오 –

+1

제안 된 절차는 Windows에서 잘 작동하지만, 그러나 .book 파일 안에 삽입 된 생성 된리스트에서 모든 "\"문자를 "/"로 대체해야했습니다. – jmd

2

Sun JavaDoc FAQ에 따르면 몇 가지 옵션이 있습니다. 대부분 무료이며 하나 또는 두 가지 상용 제품이 있습니다. http://java.sun.com/j2se/javadoc/faq/index.html#print에서 확인하십시오.

+1

해당 페이지에서 MIF 도크 렛 (주석과 호환되지 않음), html2ps (현재는 해외에서 작동하지 않는 Windows에서는 불가능) 및 HTMLDOC (구매 또는 내 첫 시도에서 성공하지 못했던 빌드). 여전히 PDFDoclet을 확인해야하지만, 확실하게 여기에서 먼저 물어보기로 결정했다. (결국 두 개의 도크 렛은 똑같은 일을하지 않으면 분명히 빠져있을 수있다. 매개 변수/설정과 관련하여). 그런 조건에서 이전에 사용 했습니까? 감사! – chesterbr

+0

불행히도, 아니오, 필자는 아직 문서를 인쇄하는 것이별로 도움이되지 않는 작은 규모의 팀과 일하고 있습니다. 코드는 여전히 최신 버전으로, docs는 몇 주 후에 구식이 될 것입니다. – MCory

+0

예, 전적으로 동의합니다. 대부분의 JavaDocs의 실제 가치는 "라이브"특성입니다. 하지만 이것은 외부 요청이었습니다 : -/ – chesterbr

2

이 질문이 제기되면이 파일을 사용하여 ltxdoclet 프로젝트를 연결할 수 있습니다.

이것은 JavaDoc 플러그인 인 소스에서 LaTeX 형식으로 문서를 작성한 다음 PdfLaTeX를 통해 PDF를 생성 할 수 있습니다.

선택적으로 예쁜 인쇄 소스 코드를 포함 할 수도 있습니다.