eihen/jasperstarter-bin

该包已被废弃且不再维护。未建议替代包。

命令行 JasperReports 工具

v3.4.1.0 2018-12-13 16:48 UTC

This package is auto-updated.

Last update: 2023-09-14 03:44:52 UTC


README

此存储库包含直接从 Sourceforge 获取的 JasperStarter 二进制发行版文件,未做任何修改,以便将其作为 composer 等包管理器的包提供。

问题

在此存储库上打开的问题必须与包管理器文件(如 composer.json)相关,或关于 JasperStarter 新版本的通知;有关 JasperStarter 本身的问题,请参阅 反馈

包版本信息

版本号的前三位对应 JasperStarter 版本,第四位数用于在此存储库中的其他文件更改后提升包的版本。因此 v3.2.1.1 对应 JasperStarter v3.2.1,并且在包含该版本 JasperStarter 之后,此存储库的修订版为 1。

JasperStarter 信息

当前 JasperStarter: v3.2.1

有关此包中包含的特定版本的用法说明,请参阅 用法

JDBC 连接器

此包中包含的所有 JDBC 连接器均直接从各自官方来源获取,未做任何修改。

此包包含以下连接器

原始 JasperStarter README

JasperStarter - 从命令行运行 JasperReports

JasperStarter 是一个开源的命令行启动器和批处理编译器,用于 JasperReports

官方主页是 jasperstater.cenote.de

它具有以下特性

  • 运行任何需要 jdbc、csv、xml、json、jsonql 或空数据源的 JasperReport
  • 与任何提供 jdbc 驱动的数据库一起使用
  • 运行包含子报告的报告
  • 执行需要运行时参数的报告。接受任何类具有字符串构造函数的参数。此外,以下类型也受支持或具有特殊处理程序
    • 日期、图像(请参阅用法)、区域设置
  • 可选提示报告参数
  • 直接打印到系统默认打印机或指定打印机
  • 可选显示打印机对话框以选择打印机
  • 可选显示打印预览
  • 以下格式导出文件
    • pdf、rtf、xls、xlsMeta、xlsx、docx、odt、ods、pptx、csv、csvMeta、html、xhtml、xml、jrprint
  • 一次命令调用导出多种格式
  • 一次命令调用编译、打印和导出
  • 查看、打印或导出之前填写的报告(使用jrprint文件作为输入)
  • 可以编译整个目录的.jrxml文件。
  • 集成到非Java应用程序中(例如PHP、Python)
  • Windows上的二进制可执行文件
  • 包含JasperReports,因此这是您唯一需要安装的工具
  • 使用stdin和stdout进行“无盘”操作,用于输入数据和输出。

要求

  • Java 1.8或更高版本
  • 适用于您的数据库的JDBC 2.1驱动程序

快速入门

  • Sourceforge下载JasperStarter。
  • 将发行版存档提取到系统上的任何目录。
  • 将安装的./bin目录添加到您的搜索路径中(在Windows上:运行setup.exe)。
  • 将您的jdbc驱动程序放入安装的./jdbc目录中,或使用--jdbc-dir指向不同的目录。

使用-h调用JasperStarter以获取概览

$ jasperstarter -h

使用process -h调用JasperStarter以获取process命令的帮助

$ jasperstarter process -h

带有报告参数的示例

$ jasperstarter pr report.jasper -t mysql -u myuser -f pdf -H myhost
-n mydb -o report -p secret -P CustomerNo=10 StartFrom=2012-10-01

使用通用数据库类型的hsql示例

$ jasperstarter pr report.jasper -t generic -f pdf -o report -u sa
--db-driver org.hsqldb.jdbcDriver
--db-url jdbc:hsqldb:hsql://

有关更多信息,请查看发行版存档中的docs目录或在线阅读用法页面。

使用公共API进行Python集成

JasperStarter公开了一个API,可以通过jpy与之一起使用,以提供从Python的直接访问

加载JVM。有关详细信息,请参阅jpy文档。

import jpyutil jpyutil.init_jvm(jvm_maxmem='512M', jvm_classpath=['.../jasperstarter.jar'])

加载所需的Java类型。

import jpy Arrays = jpy.get_type('java.util.Arrays') File = jpy.get_type('java.io.File') Report = jpy.get_type('de.cenote.jasperstarter.Report') Config = jpy.get_type('de.cenote.jasperstarter.Config') DsType = jpy.get_type('de.cenote.jasperstarter.types.DsType')

创建JasperStarter配置。有关详细信息,请参阅Config.java。

config = Config() config.setInput('jsonql.jrxml') config.setOutput('contacts.pdf') config.setDbType(DsType.json) config.setDataFile(File('contacts.json')) config.setJsonQuery('contacts.person') config.setOutputFormats(Arrays.asList([]))

运行报告。有关详细信息,请参阅Report.java。

instance = Report(config, File(config.getInput())) instance.fill() instance.exportPdf()

有关更完整的示例,请参阅examples/python目录。

发行说明

有关更改历史,请参阅更改

已知错误

有关即将出现的问题,请参阅 问题

反馈

欢迎反馈!如果您有任何问题或建议,请随时给我们发邮件至我们的 讨论区。如果您发现了错误或缺少功能,请登录我们的 问题跟踪器 并创建错误或功能请求。

如果您喜欢这个软件,您可以写一个 评论 :-)

开发

源代码可在 bitbucket.org/cenote/jasperstarter 获取,项目网站托管在 Sourceforge

JasperStarter 使用 Maven 构建。

在 Linux 64 位上,launch4j-maven-plugin 可能会失败。在这种情况下,您可能需要以下 32 位版本的库

  • z1
  • ncurses5
  • bz2-1.0

在 Ubuntu 14.04 或更高版本上安装

$ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

在 Fedora 27 或更高版本上安装

$sudo dnf install ncurses-compat-libs.i686

要获取发行版软件包,请运行

$ mvn package -P release

或者如果您从当前默认分支构建,您最好使用

$ mvn package -P release,snapshot

注意!在没有将依赖项放入 ../lib 的情况下,您不能执行 target/jasperstarter.jar !请参阅下面的 dev 配置文件!

如果您想构建 Windows setup.exe,您需要在您的搜索路径中安装 nsis (在 Linux 上也有效,您可以在 Sourceforge 下载文件夹 build-tools 中找到编译的发布版,方便起见),并将 windows-setup 配置文件添加到您的构建中。

$ mvn package -P release,windows-setup

或者

$ mvn package -P release,windows-setup,snapshot

在开发过程中,您可能希望有一个更快的构建。dev 配置文件排除了某些长时间运行的报告和压缩存档。相反,它将构建结果放入 target/jasperstarter-dev-bin

$ mvn package -P dev

现在您可以在没有 IDE 的情况下执行 JasperStarter

$ target/jasperstarter-dev-bin/bin/jasperstarter

或者

$ java -jar target/jasperstarter-dev-bin/lib/jasperstarter.jar

在开发过程中,您可能希望不受测试的干扰。因此以下选项很有用

$ mvn package -P dev -D skipTests

或者

$ mvn package -P dev -D maven.test.failure.ignore=true

要从您的 IDE 中运行 JasperStarter,请在您的运行配置的参数列表中添加 --jdbc-dir jdbc。否则您将收到错误

错误,(...)/JasperStarter/target/classes/jdbc 不是一个目录!

将您的 jdbc 驱动程序放入项目的 ./jdbc 目录中,以便从您的 IDE 中调用 JasperStarter 以调用基于数据库的报告。

许可证

版权所有 2012-2015 Cenote GmbH。

根据 Apache License,版本 2.0(“许可证”);除非遵守许可证规定,否则您不得使用此文件。您可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则在许可证下分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可证的具体语言、权限和限制,请参阅许可证。