我正在寻找一个嵌入applet应用程序的轻量级java报告引擎。
我的第一个选择是Jasper Reports,但罐子超过2Mb,有点太重(太臃肿)以满足我的需求。我不知道是否有模块化的碧玉分布,功能分为几个罐子(如html渲染,pdf,excel,编译,运行时等)。
我需要使用Swing预览报告并打印它。 PDF导出是一个加号。
我正在寻找一个嵌入applet应用程序的轻量级java报告引擎。
我的第一个选择是Jasper Reports,但罐子超过2Mb,有点太重(太臃肿)以满足我的需求。我不知道是否有模块化的碧玉分布,功能分为几个罐子(如html渲染,pdf,excel,编译,运行时等)。
我需要使用Swing预览报告并打印它。 PDF导出是一个加号。
Jasper Reports确实包含一个具有基本功能的jar,可以预览和打印报告。它打包为jasperreports-x.x.x-applet.jar,大约350k。
我知道这有点晚了,但是根据您的要求,我工作的公司提出的报告解决方案似乎是完美的: i-net清除报告 (曾经是i-net Crystal-Clear)。
看看它,告诉我们你的想法。
看到 NextReports引擎 大约300k。 NextReports Designer可免费使用。
如果找不到更好的解决方案,应该可以为Jasper Reports创建一个精简的JAR文件。该 GenJar 工具应该能够基于其静态依赖性构建JAR文件。
很久以前,我曾经使用Zelix的“Classmaster”混淆工具,它可以选择剥离未使用的类。我认为它甚至可能剥夺了未使用的方法,尽管我的记忆有点朦胧。 (我在一个封闭的源产品上使用它......它已经消失在IP“黑洞”中。)
编辑:另一种选择是 ProGuard的,除了它是开源的,它像Classmaster一样进行模糊处理和剥离。 (可悲的是,他们似乎错误配置了他们的SF网站链接。但上面的链接有效。)
当然,如果Jasper Reports使用 Class.forName()
您需要识别所有相关类,将它们添加为您使用的剥离工具的“根”依赖项。此外,您需要查看Jasper Reports许可证,以确保允许您“分发”剥离的JAR文件。
Jasper Reports确实包含一个具有基本功能的jar,可以预览和打印报告。它打包为jasperreports-x.x.x-applet.jar,大约350k。
我知道这有点晚了,但是根据您的要求,我工作的公司提出的报告解决方案似乎是完美的: i-net清除报告 (曾经是i-net Crystal-Clear)。
看看它,告诉我们你的想法。
看到 NextReports引擎 大约300k。 NextReports Designer可免费使用。
如果找不到更好的解决方案,应该可以为Jasper Reports创建一个精简的JAR文件。该 GenJar 工具应该能够基于其静态依赖性构建JAR文件。
很久以前,我曾经使用Zelix的“Classmaster”混淆工具,它可以选择剥离未使用的类。我认为它甚至可能剥夺了未使用的方法,尽管我的记忆有点朦胧。 (我在一个封闭的源产品上使用它......它已经消失在IP“黑洞”中。)
编辑:另一种选择是 ProGuard的,除了它是开源的,它像Classmaster一样进行模糊处理和剥离。 (可悲的是,他们似乎错误配置了他们的SF网站链接。但上面的链接有效。)
当然,如果Jasper Reports使用 Class.forName()
您需要识别所有相关类,将它们添加为您使用的剥离工具的“根”依赖项。此外,您需要查看Jasper Reports许可证,以确保允许您“分发”剥离的JAR文件。
为什么2Mb对于服务器端库来说太大了? Docmosis的jar大小不到500k,但是服务器上需要OpenOffice,因此它在某种程度上更小而在另一种方式中更大。除非您使用所有功能/类,否则Java不会将2Mb Jasper加载到内存中。
恕我直言 块模板引擎 是最好的。 jar文件只有 180 KB!并支持IF和迭代。多么酷啊 !