相关疑难解决方法(0)

什么是maven-shade-plugin,为什么要重新定位Java包?

我发现某人的pom.xml中使用了maven-shade-plugin.我之前从未使用过maven-shade-plugin(我是Maven n00b),所以我试着理解使用它的原因及其作用.

我查看了Maven文档,但是我无法理解这句话:

"这个插件提供了将工件打包在超级jar中的功能,包括它的依赖关系和阴影 - 即重命名 - 一些依赖项的包." 页面上的文档似乎不是新手友好的.

什么是"超级罐子?" 为什么有人想制作一个?重命名依赖项包的重点是什么?我试图通过maven-shade-plugin apache页面上的示例,例如"为Uber Jar选择内容",但我仍然无法理解"着色"所取得的成就.

任何指向说明性示例/用例的指针(解释为什么在这种情况下需要着色 - 解决了什么问题)将不胜感激.最后,我什么时候应该使用maven-shade-plugin?

java jar maven maven-shade-plugin

262
推荐指数
3
解决办法
8万
查看次数

如何将TIFF ImageReader添加到Grails中注册的人

我正在尝试创建一个Grails应用程序,它可以显示TIFF文件和其他图像的预览.

背景

这些图像是从SOAP服务构造的,它为我提供了图像的字节.在一个服务方法中,我取byte [],从中构造一个ByteArrayInputStream,然后从中创建一个BufferedImage.

def inputStream = new ByteArrayInputStream(bytes)
BufferedImage originalImage = ImageIO.read(inputStream)
ImageIO.write(originalImage, 'png', response.outputStream)
Run Code Online (Sandbox Code Playgroud)

对于JPG,我可以轻松地将图像作为img标记的src流式传输到浏览器.但是,我需要将图像转换为其他格式(最好是JPG或PNG),以使它们成为标记的src.

问题

我知道我需要JAI才能读取TIFF文件.jai_core.jar,jai_codec.jar文件在我的classpath中.事实上,因为我在Mac OSX上,它们是自动安装的.但是,当我运行grails应用程序并尝试从SOAP服务接收的字节构造TIFF图像时,我收到此错误:

| Error 2013-06-18 15:23:38,135 [http-bio-8080-exec-10] ERROR errors.GrailsExceptionResolver  - IllegalArgumentException occurred when processing request: [GET] /BDMPlugin/BDMPlugin/displayImageFromRef - parameters:
pageRef: 28:22072FBCA0A8889D9C041D76A588BCF4DCB40376A23B5FD5C301378C8E66EB9F4933A5DFCA46365F927D9E91B337B6E1E980FB4406644801
type: TIFF
im == null!. Stacktrace follows:
Message: im == null!
    Line | Method
->> 1457 | write                in javax.imageio.ImageIO
- - - - - - - - - - - - - - - - - - - …
Run Code Online (Sandbox Code Playgroud)

grails jai javax.imageio

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

grails ×1

jai ×1

jar ×1

java ×1

javax.imageio ×1

maven ×1

maven-shade-plugin ×1