2

使用できるときは、グアバのPreconditions大ファンです。ただし、Guava jar は 2 MB であり、かなり大きくなる可能性があります...

jar の重量が 26k のプロジェクトがあるので、問題は、JDK (6+) 以外に依存関係のない、そのようなユーティリティ クラスを持つ軽量ライブラリがあるかどうかです。作成することはできますが、車輪の再発明はしたくありません。

4

4 に答える 4

0

私が作成したRequirements APIを見てください。間もなくリリースされる 3.0.0 の重量は 167k です。非常によく維持されており、非常に使いやすいです。

要件 API

String actual = "foosball";
String expected = "ballroom";
requireThat(actual, "actual").isEqualTo(expected, "expected")

あなたにこれを与えます:

出力

(端末が色をサポートしていない場合は、代わりにテキストの差分が表示されます)

于 2016-10-11T15:19:06.550 に答える
0

代わりに、valid4j を hamcrest-matchers と共に使用できます (Maven Central で org.valid4j:valid4j として見つかります)。

入力検証 (回復可能な例外のスロー) の場合:

import static org.valid4j.Validation.*;

validate(argument, isValid(), otherwiseThrowing(InvalidException.class));

または前提条件(実際にはアサーションなど)の場合:

import static org.valid4j.Assertive.*;

require(x, greaterThan(0)); // throws RequireViolation extends AssertionError

リンク:

于 2014-12-12T18:37:32.287 に答える