2

メニュー コマンド Project\Generate Javadoc を使用して Javadoc を生成しようとすると、XPages のカスタム クラスに対して次の警告とエラーが生成されます。

javadoc: warning - No source files for package net.focul.utilties
javadoc: warning - No source files for package net.focul.workflow
javadoc: error - No public or protected classes found to document.

パッケージはWebContent/WEB-INF/src、ビルド パスで構成されたフォルダーにあり、Generate Javadoc ウィザードで選択できます。クラスは public メソッドで public です。

これらを選択すると、すべての Xpage クラスとカスタム コントロール クラスの Javadoc が生成されます。

4

3 に答える 3

1

javadocがDesignerVFS(仮想ファイルシステム)を理解していないため、この動作が発生しています。プロジェクトは、単一のNSF内に自己完結型ではなく、ローカルハードドライブ上のいくつかのフォルダー構造内の一連の個別のファイルで構成されていることを前提としています。全体として、Designer VFSは、プロジェクトリソースの読み取り/書き込み要求をインターセプトし、DXLまたはCDレコードをインポート/エクスポートするなどして、Eclipseをだましてローカルファイルと相互作用していると信じ込ませます。同じように。

皮肉なことに、各XPageおよびカスタムコントロールに対応するJavaソースファイルは、NSFに保存されないため、正常に処理されます。すべてのプロジェクトビルド中に、Designerはすでに生成されているこれらのいずれかを破棄し、さまざまな.xspファイルの現在の内容に基づいてそれらを再作成します。次に、それらのJavaファイルを.classファイルにコンパイルします。これらのファイルは NSF内にデザインノートとして保存されます。実行時に、VFSから抽出されて実行されるのはこれらのファイルです...この時点ではソースコードは重要ではなくなったため、NSFに.javaファイルを含める必要はなく、そのまま保持されます。ハードドライブ。この動作の1つの兆候は、パッケージエクスプローラー/ナビゲーターで表示したときにフォルダーの名前が「ローカル」であることです。

組み込みの(8.5.3以降の)バージョン管理統合を使用している場合(この機能の使用方法の詳細については、この記事を参照してください)、ビルドパスを微調整して、に保存されているsrcフォルダーのコピーを含めることができます。 「リンクされたソースフォルダ」としてのディスク上のプロジェクト。これにより、javadocは重複コピーを有効なソースファイルと見なし、生成されたドキュメントにそれらを含めます。欠点としては、Designerがそれらを有効なソースファイルと見なし、重複によるコンパイルエラーが発生することもあります。したがって、このアプローチは、ドキュメントを頻繁に生成する必要がない場合にのみ実行可能であり、したがって、javadocを実行するためだけにビルドパスを一時的に中断してから、通常の設定に戻すことができます。

別の方法は、カスタムJavaコードを継続的にこの方法で実際に維持することです。NSF内のWEB-INFにフォルダーを作成する代わりに、ソースを格納するフォルダーをハードドライブに作成し、その場所をリンクとして含めます。ソースフォルダは無期限に。そうすれば、Designerは引き続きソースを見つけることができますが、javadocも見つけることができます。注:このルートを使用する場合は、必ずSCMを使用する必要があります。ソースコードはNSF内に存在しなくなったため、他の開発者にソースコードを提供し、使用するバックアップスケジュールに確実に含めるために使用する便利なコンテナを提供しますソースコードを現在使用している場所は、ローカルハードドライブにあります。したがって、これらのファイルをGit / Subversion / Mercurialなどに定期的にコミットするか、少なくとも、定期的にバックアップされ、該当する場合は他のすべてのメンバーがアクセスできるファイルサーバーに保存するようにしてください。プロジェクトチーム。

于 2012-12-15T07:04:01.203 に答える
0

私は同じ状況に陥りましたが、ソースを外部フォルダーにエクスポートし、通常の Eclipse を使用して JavaDoc を生成するのが最も簡単な方法であることがわかりました。私のプロセスがティムの提案よりも手間がかからないかどうかはわかりませんが、私にとっては、VFS の気まぐれに対処しようとするよりもリスクが少ないと感じています.

于 2013-01-06T06:06:50.913 に答える
0

Designer で net.focul.utilties を展開すると、すべてのメソッドとプロパティが表示されます。ただし、メソッドをクリックすると、neo ソース コードが表示されます。したがって、これは javadoc がドキュメントの生成に失敗する場所です。アプリケーションの作成者がソース コードを提供していないと思います。ソースがどこかにある場合は、このコードを添付すると、javadoc でドキュメントを生成できます。

于 2012-09-08T05:36:19.537 に答える