現在、Guava API の助けを借りて次のコードを使用して、クラスパスからプロパティ ファイルをロードしていました。
final URL fileURL = Resources.getResource("res.properties");
final File file = new File(fileURL.getFile());
Java7SE で導入された新しい NIO2 API を試し、Guava API 呼び出しを削除することにしたので、コードを次のように変換しました。
final URL fileURL = getClass().getResource("/res.properties");
final Path path = Paths.get(fileURL.toURI());
URL
しかし、変更されたコードは、との間で変換が発生する行でチェック例外をスローしますURI
。私はそれを取り除くことができる方法はありますか?Path
たとえば、指定されたインスタンスを取得できますURL
か?
PS私は、変更されたコードが元のものと意味的に同じではないことを認識しています-リソースが見つからない場合はグアバのgetResource
スロー、この場合はJavaのリターン。IllegalArgumentException
getResource
null