11package de .fraunhofer .iem .swan .io .doc ;
22
3- //import com.sun.tools.javadoc.Main;
4- //import jdk.javadoc.doclet.StandardDoclet;
3+ import javax .tools .DocumentationTool ;
4+ import javax .tools .ToolProvider ;
5+ import java .util .ArrayList ;
6+ import java .util .List ;
57
68/**
79 * @author Oshando Johnson on 03.06.20
810 */
911public class DocletExecutor {
1012
1113 public static final String SSL_DOCLET = "info.semanticsoftware.doclet.SSLDoclet" ;
12- public static final String COVERAGE_DOCLET = "com.manoelcampos.javadoc.coverage .CoverageDoclet" ;
14+ public static final String COVERAGE_DOCLET = "de.fraunhofer.iem.coveragedoclet .CoverageDoclet" ;
1315 public static final String STANDARD_DOCLET = "com.sun.tools.doclets.standard.Standard" ;
1416
1517 private String outputDir ;
@@ -33,20 +35,20 @@ public void setDoclet(String doclet) {
3335
3436 public void runDoclet (String sourcePath , String packages , String outputPath ) {
3537
36- System .out .println ("runnin:" + sourcePath + " " + packages );
37- String [] docletParams = new String []{
38- // "Xdoclint:none",
39- "-private" ,
40- "-doclet" , getDoclet (),
38+ ArrayList <String > docletArgs = new ArrayList <>(List .of (
39+ "-doclet" , doclet ,
4140 "-docletpath" , getDocletPath (doclet ),
42- "-d" , outputPath ,
43- // "-source", "8",
44- // "-o", "coverage-report.html",
4541 "-sourcepath" , sourcePath ,
4642 "-subpackages" , packages
47- };
48- System .out .println ();
49- //Main.execute(docletParams);
43+ ));
44+
45+ if (doclet .equals (SSL_DOCLET )) {
46+ docletArgs .add ("--destdir" );
47+ docletArgs .add (outputPath );
48+ }
49+
50+ DocumentationTool docTool = ToolProvider .getSystemDocumentationTool ();
51+ docTool .run (System .in , System .out , System .err , docletArgs .toArray (new String [0 ]));
5052 }
5153
5254 public void runDoclet (String sourcePath , String packages ) {
@@ -62,9 +64,9 @@ public void runDoclet(String sourcePath, String packages) {
6264 private String getDocletPath (String doclet ) {
6365 switch (doclet ) {
6466 case SSL_DOCLET :
65- return "../ssldoclet/ target/ssldoclet-1.2.jar " ;
67+ return "swan-javadoc-exporter/ target/classes " ;
6668 case COVERAGE_DOCLET :
67- return "../javadoc -coverage/target/javadoc-coverage-1.2.0.jar " ;
69+ return "../doc -coverage-doclet /target/classes/ " ;
6870 case STANDARD_DOCLET :
6971 return "/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/lib/tools.jar" ;
7072 }
0 commit comments