Java リソースの最終変更時刻を取得する必要があります。私が使うとき
url.openConnection().getLastModified()
jar全体の最終変更時刻を返します(内部のすべてのアイテムで同じ)が、特定のファイルの変更時刻が必要です。情報はそこにあります (jar を zip として開くと、特定のファイルで正しい時刻が表示されます)。誰かがそれにアクセスする方法を知っていますか?
ありがとう
Java リソースの最終変更時刻を取得する必要があります。私が使うとき
url.openConnection().getLastModified()
jar全体の最終変更時刻を返します(内部のすべてのアイテムで同じ)が、特定のファイルの変更時刻が必要です。情報はそこにあります (jar を zip として開くと、特定のファイルで正しい時刻が表示されます)。誰かがそれにアクセスする方法を知っていますか?
ありがとう
次のようなものを試してください:
try (FileSystems jarFS = FileSystems.newFileSystem(URI.create("jar:" + jarURI), Collections.<String, Object>emptyMap())){
Path resourcePath = jarFS.getPath(resourcePathString);
FileTime fileTime = Files.getLastModifiedTime(resourcePath);
}
また、NIO ファイル API を使用して Jar ファイルを操作するための soem ユーティリティ メソッドも作成しました。
ライブラリはオープンソースです。
メイヴン:
<dependency>
<groupId>org.softsmithy.lib</groupId>
<artifactId>softsmithy-lib-core</artifactId>
<version>0.2</version>
</dependency>