これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド japi-compliance-checker です。
プログラム:
NAME
japi-compliance-checker - Java ライブラリ API の下位互換性をチェックする
DESCRIPTION
名前:
Java API コンプライアンス チェッカー (japi-compliance-checker) 下位互換性のチェック
Java ライブラリ API の
説明:
Java API Compliance Checker (Java ACC) は後方確認ツールです。
Java ライブラリ API のバイナリ/ソース互換性。 ツールはクラスをチェックします
新旧バージョンの宣言と、壊れる可能性のある変更の分析
互換性: クラスメンバーの削除、抽象メソッドの追加など。
バイナリ互換性により、既存のバージョンがクラッシュしたり、誤った動作が発生したりする可能性があります。
クライアントが新しいライブラリで実行されている場合、古いバージョンのライブラリでビルドされます。 破損
ソースの互換性により、新しいライブラリで再コンパイル エラーが発生する可能性があります
バージョン。
Java ACC は、次のようなライブラリ開発者およびオペレーティング システムの保守者を対象としています。
下位互換性を確保することに関心がある (つまり、古いクライアントの実行を許可する、または
新しいバージョンのライブラリで再コンパイルする必要があります)。
このツールは自由ソフトウェアです:あなたはそれを再配布および/またはそれの下でそれを変更することができます
GNU LGPL または GNU GPL の条件。
USAGE:
japi-compliance-checker [オプション]
例:
japi-compliance-checker OLD.jar NEW.jar
OR
japi-コンプライアンスチェッカー -lib NAME -古い 古い.xml -新着 NEW.xml、OLD.xml、NEW.xmlは
XML 記述子:
1.0
/path1/to/JAR/ /path2/to/JAR/ ...
情報 オプション:
-h|-ヘルプ
このヘルプを印刷してください。
-v|-バージョン
バージョン情報を印刷します。
-ダンプバージョン
ツールバージョン(1.4.3)を印刷し、他に何もしないでください。
全般的な オプション:
-l|-lib|-ライブラリ名
ライブラリ名 (バージョンなし)。
-d1|-old|-o PATH
最初の (古い) ライブラリ バージョンの記述子。 次のいずれかである可能性があります。
1. Java アーカイブ (*.jar) 2. XML 記述子 (VERSION.xml ファイル):
1.0
/path1/to/JAR/ /path2/to/JAR/
...
...
3. によって生成された API ダンプ -投げ捨てる オプション 4. Java アーカイブのあるディレクトリ 5. カンマ
Java アーカイブの区切りリスト 6. Java を含むディレクトリのカンマ区切りリスト
アーカイブ
1、4、6 の記述子タイプを使用している場合は、バージョン番号を指定する必要があります
-v1 & -v2 オプションも。
*.jar を記述子として使用している場合、ツールは実装を取得しようとします。
MANIFEST.MF ファイルからのバージョン。
-d2|-new|-n パス
2 番目の (新しい) ライブラリ バージョンの記述子。
EXTRA オプション:
-クライアント|-アプリのパス
このオプションを使用すると、チェックする必要があるクライアント Java アーカイブを指定できます。
新しいライブラリ バージョンへの移植性。
-バイナリ
「バイナリ」互換性の問題のみを表示します。 レポートの生成先
「bin_compat_report.html」。
-source
「ソース」の互換性の問題のみを表示します。 レポートの生成先
「src_compat_report.html」。
-v1|-バージョン1 NUM
最初の API バージョンを記述子の外側で指定します。 このオプションは、次の場合に必要です。
代替の記述子タイプを好んだ (「 -d1 オプション)。
一般に、XML 記述子で指定する必要があります。
VERSION
-v2|-バージョン2 NUM
2 番目のライブラリ バージョンを記述子の外側で指定します。
-s|-厳密
すべての API 互換性警告を問題として扱います。
-内部保持
これらのパッケージのチェックを省略しないでください。
*impl* *内部* *例* *com.oracle* *com.sun* *COM.rsa* *sun* *sunw*
-スキップ-内部 パターン
パターンと一致する内部パッケージをチェックしません。
-投げ捨てる|-ダンプ-API パス
ライブラリ API を gzip 圧縮された TXT 形式ファイルにダンプします。 どこにでも転送して渡すことができます
記述子の代わりに。 また、ツールのデバッグにも使用できます。 互換性
ダンプ バージョン: 1.0<=V<=1.0
-クラス-リスト パス
このオプションを使用すると、チェックする必要があるクラスのリストを含むファイルを指定できます。
他のクラスはチェックされません。
-注釈-リスト パス
注釈のリストを含むファイルを指定します。 このツールはクラスのみをチェックします
このリストの注釈によって注釈が付けられます。 他のクラスはチェックされません。
-スキップ-非推奨
非推奨のメソッドとクラスの分析をスキップします。
-授業をサボります パス
このオプションを使用すると、使用すべきではないクラスのリストを含むファイルを指定できます。
チェックしました。
-スキップパッケージ パス
このオプションを使用すると、パッケージのリストを含むファイルを指定できます。
チェックしました。
-ショート パス
「追加されたメソッド」セクションのない短いレポートを生成します。
-レポートパス パス
互換性レポートへのパス。 デフォルト:
compat_reports/LIB_NAME/V1_to_V2/compat_report.html
-bin-レポートパス パス
「バイナリ」互換性レポートへのパス。 デフォルト:
compat_reports/LIB_NAME/V1_to_V2/bin_compat_report.html
-src-レポートパス パス
「ソース」互換性レポートへのパス。 デフォルト:
compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html
-素早い
素早い分析。 無効:
- メソッドパラメータ名の分析 - クラスフィールド値の分析 - の分析
追加された抽象メソッドの使用法 - 非推奨のメソッドとクラスの区別
-選別
API ダンプ内のデータの並べ替えを有効にします。
-show アクセス
レポートにリストされている非パブリック メソッドのアクセス レベルを表示します。
-テンプレートを隠す
レポート内のテンプレートパラメータを非表示にします。
-パッケージを非表示にする
-minimal
何もしない。
-show-パッケージ
レポートにパッケージ名を表示します。
-制限の影響を受ける LIMIT
変更の説明の下にリストされている、影響を受けるメソッドの最大数
レポートを入力します。
その他 オプション:
-テスト
内部テストを実行します。 サンプル ライブラリの XNUMX つの互換性のないバージョンを作成して実行する
互換性をチェックするツール。 このオプションを使用すると、ツールが
現在の環境では正しく動作します。
-デバッグ
デバッグモード。 デバッグ情報を画面に表示します。 中間解析段階を保存する
デバッグディレクトリ内:
デバッグ/LIB_NAME/VER/
また、使用を検討してください -投げ捨てる ツールをデバッグするためのオプション。
-タイトル NAME
レポート タイトルのライブラリ名を NAME に変更します。 デフォルトでは、
によって指定された名前 -l オプションを選択します。
-jdk-パス パス
JDK インストール ツリーへのパス (例: /usr/lib/jvm/java-7-openjdk-amd64).
報告する:
互換性レポートは次の目的で生成されます。
compat_reports/LIB_NAME/V1_to_V2/compat_report.html
EXIT コード:
0 - 互換性があります。 ツールはエラーなしで実行されました。 ゼロ以外 - 互換性がない、または
ツールを実行するとエラーが発生しました。
MORE 情報:
http://ispras.linuxbase.org/index.php/Java_API_Compliance_Checker
https://github.com/lvc/japi-compliance-checker
onworks.net サービスを使用してオンラインで japi-compliance-checker を使用する