問題タブ [doclet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4071 参照

java - Eclipse でドックレットを実行する方法

投稿にある例を参照してください: http://www.javaworld.com/jw-08-2000/jw-0818-javadoc.html#resources

投稿の例: SimpleDoclet と SimpleOrder

SimpleDoclet と SimpleOrder を配置する必要がある場所と、このドックレットを実行して出力を生成する方法を知る必要がありますか?

次のデータでGenerate JavaDocを使用してみました:

2 つのパッケージがあります。javadoc を生成するクラスを含む newPack と、SimpleDoclet が存在する oldPack です。

これに対する解決策を教えてください。 Javadoc

0 投票する
1 に答える
599 参照

java - ドックレットのMain.executeは、ファイルが見つからないというエラーをスローします

クラスデータを印刷するドックレットがあります。コマンドラインからファイルを実行すると、正常に動作します。しかし、Javaプログラム内でも実行したいと思います。それで、私は私のドックレットで以下の主な方法を使用しました:

NewClass.javaは、SimpleDocletにjavadocを生成させたいJavaファイルです。これはできますか?

その場合、このドックレットを実行すると、次のエラーメッセージが表示されます。

解決策はありますか?

0 投票する
2 に答える
3241 参照

maven - プロジェクトでカスタムドックレットクラスをコンパイルして実行するにはどうすればよいですか?

コンパイル時にすべてのクラス javadoc コメント (できればライブラリ WebPage クラスのサブクラス) を .properties ファイルにダンプしようとしていますclassname=comment

これまでのところ、私は持っています:

  • 作成されたドックレット クラスSiteMapDoclet
    • このクラスは、プロジェクト内のすべての javadoc をスキャンし、それらを .properties ファイルにダンプするように定義されています
  • それが機能するために必要な構成を私の pom.xml に追加しました。

バージョン: Java 1.6.0.21、Maven 2.2.1

問題:
mvn site返品:

AdditionalDependenciesプロジェクトの通常の依存関係であっても、jarを設定しようとしました。また、クラスが bootclasspath の一部として必要とする jar へのパスを追加しようとしました。

私の pom.xml のレポート セクションは次のようになります。

注:
${m2Repository}はファイルの上位にあるプロパティとして定義され、 はファイルの
上位${env.USERPROFILE}/.m2/repository
${bootClassPath}にあるプロパティとして定義され、次のように
定義されます。${env.JRE_6_HOME}\lib\rt.jar;${env.JAVA_HOME}\lib\tools.jar;

どうすれば修正できますNoClassDefFoundErrorか?

さらに、SiteMap ファイルを通常のビルド プロセスの一部として実行したいと考えていcompileますpackage

でこれを定義しようとしましbuildたが、javadoc が作成されず、ドックレットからのログ出力が表示されません。

更新:
@ ben75 の提案に感謝します。pom.xml<reporting>のセクションを削除したところ、ビルド中にプロセスが失敗しました。からセクションを追加してコピーしました。<goals><configuration><reporting>

それはまだスローされてNoClassDefFoundErrorいますが、私が望むビルドで起こっています。追加してみました:

構成セクションに移動しましたが、うまくいきませんでした。

0 投票する
1 に答える
698 参照

java - 一般的な javadocs の JavaDoc パーサー?

実行時に標準のDocletインターフェースを介して操作できるように、JavaDocを解析するために使用できるものはありますか? 基本的に、 Docletの逆操作です。

すべての Javadoc に対してパーサーを作成することは不可能であることは理解していますが (これは任意のドキュメント形式になる可能性があるため)、標準ドックレットにそのようなものがあったかどうか知りたいです。

0 投票する
2 に答える
816 参照

java - パブリック メソッドのサブセットの Javadoc を生成する方法はありますか? たとえば、パブリック メソッドに「パブリック API の一部ではない」という注釈を付けます。

クラス/インターフェース/パッケージのサブセットの Javadoc を作成する方法を知っています。しかし、パブリック メソッドのサブセットのみの Javadoc を生成する方法はありますか?

私が望むのは、メソッド (Javadoc タグまたは注釈) を特定の API に属するものとして、またはその一部ではないものとしてマークできることです。次に、指定された一連のメソッド (API を形成するメソッド) に対してのみ Javadoc を生成するツールを用意します。

メソッドへのパブリック/プライベート/パッケージ アクセスの選択は、私のプロジェクトには十分ではありません。パブリック メソッドは、パブリック API に属しているかどうか、または API 1 に属しているが API 2 に属していない可能性があります。基本的に、パブリック メソッドの任意のサブセットから API を選択できるようにしたいと考えています。

0 投票する
1 に答える
2837 参照

android - Doclava を使用して Android プロジェクトの javadoc を生成中にエラーが発生しました

javadoc と doclava を使用して Android プロジェクトのドキュメントを生成しようとしています。doclava jar をダウンロードし、[Project] -> [generate javadoc] でドキュメントを生成しようとしています。

メカニズムを理解していれば、doclava ドックレットを使用するように javadoc に指示する方法が 2 つあります。

1) 次のオプションで「カスタムドックレットを使用」を選択します。

ドックレット名: com.google.doclava.Doclava
ドックレット パス: /full/path/of/my/doclava/dir/doclava-1.0.6.jar

2) 「標準のドックレットを使用する」を選択し、「javadoc オプション」に以下を入力します。

-doclet com.google.doclava.Doclava
-docletpath ${/full/path/of/my/doclava/dir/doclava-1.0.6.jar}

私はこれらの問題に遭遇しました:

  • 最初の方法を使用すると、ドキュメントを正常に生成できますが、Android クラスが認識されないようです。doclava が "import android.util.SparseArray" を解析するとエラーが発生します

  • 2 番目の方法を使用すると、「javadoc: エラー - ドックレット クラス com.google.doclava.Doclava 1 エラーが見つかりません」というエラーが表示されます。

実際のところ、Doclava を使用しない場合、Android API へのリンクを含むドキュメントが正しく生成されます。

android/java doc (android/java オブジェクト用) へのリンクを含むプロジェクト javadoc を作成し、「android ルック アンド フィール」を持たせたいだけです。

0 投票する
1 に答える
251 参照

java - 自己参照依存関係として docletArtifact を使用してマルチモジュール Maven プロジェクトをデプロイするにはどうすればよいですか?

次のようなマルチモジュール Web アプリケーション プロジェクトがあります。

  1. ウェブベース
  2. 認証
  3. 文書
  4. ADFS
  5. テストサイト

Test-Siteは他のすべてのモジュールを問題なく使用します。

docは、JavaDoc とマウントされた Web ページ情報を組み合わせてSiteMapを構築します。それは私の SiteMap Generation のために JavaDocs を解析しているためです。Doclet はサイト マップの情報を解析して保存する最も簡単な方法だったので、Doclet Jar でもあります。

Test-sites pom.xml で私は持っています

したがって、実行mvn release:prepareすると、スナップショットの依存関係を解決する必要があり、次のエラーが発生します。

では、プロジェクトをデプロイするときにドックレットを正しく参照するにはどうすればよいでしょうか?

0 投票する
1 に答える
59 参照

maven - マルチモジュール Maven プロジェクトから Javadoc を収集する

大規模なMavenマルチモジュールコンテキストでは、

特定のクラスのセット (たとえば、何らかのインターフェースを実装するすべてのクラス) またはモジュールの javadoc コメントをプログラムで収集するにはどうすればよいですか?

私は愚かなドックレットを試し、QDoxを見ましたが、どちらもうまく機能していないようです。

実際、正しく行えば、これは簡単なはずだと思います。

具体的には、maven-build でこれを行う方法がわかりません: src-jars に依存して使用するにはどうすればよいですか?

0 投票する
1 に答える
147 参照

enums - 一部の 5.0 言語機能 (列挙型と注釈) をカスタム ドックレットで処理する際の問題

JDK 1.7 を使用して新しいカスタム ドックレットを作成しています。これまでに発見した問題は次のとおりです。

Doc メソッドisAnnotationType()isAnnotationTypeElement()isEnum()およびisEnumConstant()は機能しません。それらは常に false を返します

PackageDocメソッドenums()は機能しません。常に空の配列を返しますEnumsメソッドallClasses()およびの結果に含まれordinaryClasses()ます。

ClassDocメソッドenumConstants()は機能しません。常に空の配列を返しますEnum定数は method の結果に含まれfields()ます。

PackageDocメソッドannotationTypes()は機能しません。常に空の配列を返します。Annotationsmethod の結果に含まれているためinterfaces()、次の回避策を実装できます。

「Javadoc 5.0 の新機能」ページ ( http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/whatsnew-1.5.0.html )で見つけたものに基づいて、私は推測していますJDK 1.7 で書いているにもかかわらず、私のドックレットはある種の 5.0 より前の互換モードで動作しています。これは、「Javadoc 5.0 の新機能」ページで見つけたものです。

カスタムドックレットとの非互換性

5.0 より前に作成されたカスタム ドックレットは、5.0 の新しい言語機能を使用するソース ファイルで実行すると、互換性の問題が発生します。新しい言語機能: ドックレット API と標準ドックレットが改訂され、新しい 5.0 言語機能 (ジェネリック、列挙型、変数引数、および注釈) を処理できるようになりました。これらの機能を処理するには、カスタム ドックレットも修正する必要があります。Javadoc ツールは、可能な範囲で、1) 5.0 より前のソース コードで引き続き動作し、2) 5.0 ソース コードに対する期待に一致するプログラムのビューで、いわゆる「レガシー」ドックレットを提示しようとします。 . したがって、たとえば、型パラメーターと型引数はジェネリック コンストラクトから取り除かれ、型変数とワイルドカード型は消去によって置き換えられ、ClassDoc.fields() は列挙定数を返します。