如果我在类路径上有资源,则都可以按流的方式很好地加载它,甚至还有它的URL表示。不幸的是,Url的某些实现未正确实现lastModified。
我想要的是在类路径中找到某个路径,然后将其解析为磁盘上的文件-
如果在jar中,则指向该jar的File就可以了。然后,我可以从File对象而不是URL获取lastModified,这将更加有用。
大致说来:
URL url = this.getClass().getResource(myResource);
String fileName;
if (url.getProtocol().equals("file")) {
fileName = url.getFile();
} else if (url.getProtocol().equals("jar")) {
JarURLConnection jarUrl = (JarURLConnection) url.openConnection();
fileName = jarUrl.getJarFile().getName();
} else {
throw new IllegalArgumentException("Not a file");
}
File file = new File(fileName);
long lastModified = file.lastModified();
应该做你想做的。您将需要捕获IOException。
我有一个需求,我想找到运行的jar中的jar的路径。假设有一个名为example-1.0.0.jar的罐子在一个名为main-1.0.0.jar.的运行罐子里,我想知道运行罐子里存在的罐子的路径。 编辑1:例如,jar是项目中的一个依赖项。例如,假设我的项目中有一个log4j依赖项,我想知道log4j jar在类中的路径。我怎样才能找到路?
我试图构建一个资源包,从数据库而不是属性文件获取其消息。我做了一些扩展ResourceBundle的测试,ResourceBundle。控件和ListResourceBundle,我想我走的是正确的道路。 当我需要查询实际数据库以从我的ResourceBundle实现中获取消息时,我就到达了一个点。我想利用EJB层上的所有JPA架构体系来运行查询并实例化存储密钥、消息和区域设置的对象。因此,如果我
和我的Gradle构建文件: 如何删除警告?
有没有办法列出AWS中的所有资源?对于所有区域,所有资源...例如列出所有EC2实例、所有VPC、API Gateway中的所有API等...我想列出我帐户的所有资源,因为我很难找到我现在可以放弃的资源。
我有一个XSD,它定义了几个复杂类型的层次结构(每个类型都是另一个的子类型)。 前任: 我正在寻找只导入复杂类型到列表中。我想我可能可以使用ApacheDigester来做这件事,但是我想知道是否有一些方法可以用JAXB来做这件事。直接解组到对象,然后使用循环来提取缺陷类型是可行的,但似乎需要大量额外的工作。 本质上,我希望能够想出一个解决方案,可以做到如下几点: 我可能会将整个XML文件加载到一
问题内容: 假设我们具有以下类层次结构: 如果像这样在ClassB上浏览 dict ,我只会看到bar属性: 输出为bar 我可以运用自己的方式来获取属性,不仅是指定类型,还包括其祖先。但是,我的问题是python是否已经有一种方法可以在不重新发明轮子的情况下做到这一点。 如下运行我的代码… …同时返回bar和foo。 请注意,我正在简化一些事情:名称冲突,在本例中可以使用dict时使用items