繁体   English   中英

Maven - 从 JAR 文件加载资源?

[英]Maven - Load resources from JAR file?

在使用 Maven 将资源捆绑到 JAR 文件中时,我感觉我遗漏了一些关键的东西。 我的目录结构是标准的Maven之一。

使用 IDE 时,我将资源文件引用为\main\resources\public\images\path并且它工作正常,但是当 Maven css 工作和图像看起来很糟糕。 如果我查看 jar,我会找到所有 css、js 和图像。 当我尝试在浏览器中打开 css 链接时,出现 404 错误。 这是我的 pom.xml https://shrib.com/#XGISjWGN7QRfa2EIZD4r 在 eclipse 中它工作正常。 我使用Spark.staticFiles.location("public"); 加载资源。

我无法评论 Spark,但是当您创建工件(jar,胖与否)时,它只是不包含main/resources文件夹(使用 winrar 之类的工具打开 jar 并检查自己)。

另一个困难是,如果您使用与File抽象一起使用的东西 - 它可能在工件内部是错误的。 File描述了文件系统上的一个位置,并且您正在尝试从工件中读取某些内容。

通常你可以在读取资源的代码中使用:

getClass().getResourceAsStream("/public/impages/path/sample.js") 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM