duanli5662 2013-07-18 17:01
浏览 77

iReport在linux终端中运行,但没有使用PHP exec命令

I'm having problems executing the next command in a PHP file:

$cmd = '-Djava.awt.headless=true -Dlog4j.configuration=file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/log4j.properties -classpath
"custom/ZuckerReports2/resources/:custom/ZuckerReports2/resources/areas_negocio.jasper_files/:modules/zr2_Report/jasper/jasperreports-javaflow-5.1.2.jar:
modules/zr2_Report/jasper/zuckerreports-1.0.jar:modules/zr2_Report/jasper/commons-beanutils-1.8.0.jar:
modules/zr2_Report/jasper/batik-anim.jar:modules/zr2_Report/jasper/bcel-5.2.jar:
modules/zr2_Report/jasper/barcode4j-2.0.jar:
modules/zr2_Report/jasper/ant-1.7.1.jar:
modules/zr2_Report/jasper/jasperreports-applet-5.1.2.jar:
modules/zr2_Report/jasper/batik-css.jar:
modules/zr2_Report/jasper/servlet.jar:modules/zr2_Report/jasper/commons-digester-1.7.jar:
modules/zr2_Report/jasper/batik-awt-util.jar:modules/zr2_Report/jasper/jasperreports-5.1.2.jar:
modules/zr2_Report/jasper/antlr-2.7.5.jar:modules/zr2_Report/jasper/xml-apis-ext.jar:
modules/zr2_Report/jasper/poi-3.6.jar:modules/zr2_Report/jasper/iText-2.1.7.jar:
modules/zr2_Report/jasper/jxl-2.6.10.jar:modules/zr2_Report/jasper/commons-logging-1.0.4.jar:
modules/zr2_Report/jasper/batik-gvt.jar:modules/zr2_Report/jasper/spring-beans-2.5.5.jar:
modules/zr2_Report/jasper/mysql-connector-java-3.1.11-bin.jar:
modules/zr2_Report/jasper/batik-parser.jar:modules/zr2_Report/jasper/batik-util.jar:
modules/zr2_Report/jasper/hibernate3.jar:modules/zr2_Report/jasper/groovy-all-1.7.5.jar:
modules/zr2_Report/jasper/barbecue-1.5-beta1.jar:modules/zr2_Report/jasper/jcommon-1.0.15.jar:
modules/zr2_Report/jasper/jasperreports-functions-5.1.2.jar:
modules/zr2_Report/jasper/log4j-1.2.15.jar:modules/zr2_Report/jasper/saaj-api-1.3.jar:
modules/zr2_Report/jasper/jpa.jar:modules/zr2_Report/jasper/jfreechart-1.0.12.jar:
modules/zr2_Report/jasper/spring-core-2.5.5.jar:modules/zr2_Report/jasper/mondrian-3.1.1.12687.jar:
modules/zr2_Report/jasper/hsqldb-1.8.0-10.jar:modules/zr2_Report/jasper/batik-script.jar:
modules/zr2_Report/jasper/serializer.jar:modules/zr2_Report/jasper/commons-collections-2.1.1.jar:
modules/zr2_Report/jasper/batik-svggen.jar:modules/zr2_Report/jasper/batik-dom.jar:
modules/zr2_Report/jasper/rhino-1.7R1.jar:modules/zr2_Report/jasper/batik-ext.jar:
modules/zr2_Report/jasper/joda-time-1.2.1.jar:modules/zr2_Report/jasper/xml-apis.jar:
modules/zr2_Report/jasper/batik-bridge.jar:modules/zr2_Report/jasper/xercesImpl-2.7.0.jar:
modules/zr2_Report/jasper/TestZucker.jar:modules/zr2_Report/jasper/batik-svg-dom.jar:
modules/zr2_Report/jasper/jasperreports-fonts-5.1.2.jar:modules/zr2_Report/jasper/jdt-compiler-3.1.1.jar:
modules/zr2_Report/jasper/xalan-2.7.1.jar:modules/zr2_Report/jasper/png-encoder-1.5.jar:
modules/zr2_Report/jasper/bsh-2.0b4.jar:modules/zr2_Report/jasper/batik-xml.jar:
modules/zr2_Report/jasper/jaxen-1.1.1.jar:modules/zr2_Report/jasper/commons-javaflow-20060411.jar"
at.go_mobile.zuckerreports.JasperBatchMain custom/ZuckerReports2/temp/4f558394-298d-4783-4600-51e812a588ef/cmd.properties 2>&1'; 
exec($cmd,$out,$res);

The result of this execution is this error:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
    at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153)
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:55)
    at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:170)
    at at.go_mobile.zuckerreports.JasperBatchMain.main(JasperBatchMain.java:126)
Caused by: net.sf.jasperreports.engine.JRRuntimeException: java.io.IOException: Problem reading font data.
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:108)
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:128)
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.getInstance(SimpleFontFace.java:67)
    at net.sf.jasperreports.engine.fonts.SimpleFontFamily.setNormal(SimpleFontFamily.java:99)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:261)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:232)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:193)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:162)
    at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:56)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110)
    at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
    ... 8 more
Caused by: java.io.IOException: Problem reading font data.
    at java.awt.Font.createFont0(Font.java:999)
    at java.awt.Font.createFont(Font.java:876)
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:100)
    ... 18 more

However, when I run the command directly in a linux terminal, the report is generated right.

These are the lines from the log4j log file:

11:05:39,673 DEBUG ExtensionsEnvironment,main:78 - Instantiating extensions registry class net.sf.jasperreports.extensions.DefaultExtensionsRegistry
11:05:39,683 DEBUG DefaultExtensionsRegistry,main:130 - Loading registries for cache key sun.misc.Launcher$AppClassLoader@1b0620c
11:05:39,684 DEBUG JRLoader,main:873 - Found resource jasperreports_extension.properties at jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-javaflow-5.1.2.jar!/jasperreports_extension.properties in classloader sun.misc.Launcher$AppClassLoader@1b0620c
11:05:39,685 DEBUG JRLoader,main:873 - Found resource jasperreports_extension.properties at jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-5.1.2.jar!/jasperreports_extension.properties in classloader sun.misc.Launcher$AppClassLoader@1b0620c
11:05:39,685 DEBUG JRLoader,main:873 - Found resource jasperreports_extension.properties at jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-functions-5.1.2.jar!/jasperreports_extension.properties in classloader sun.misc.Launcher$AppClassLoader@1b0620c
11:05:39,686 DEBUG JRLoader,main:873 - Found resource jasperreports_extension.properties at jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-fonts-5.1.2.jar!/jasperreports_extension.properties in classloader sun.misc.Launcher$AppClassLoader@1b0620c
11:05:39,695 DEBUG DefaultExtensionsRegistry,main:158 - Loading JasperReports extension properties resource jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-javaflow-5.1.2.jar!/jasperreports_extension.properties
11:05:39,697 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.engine.style.PropertyStyleProviderExtensionFactory for property net.sf.jasperreports.extension.registry.factory.property.style.provider
11:05:39,697 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for property.style.provider using factory class net.sf.jasperreports.engine.style.PropertyStyleProviderExtensionFactory
11:05:39,699 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.headertoolbar.HeaderToolbarConditionalStyleProviderExtensionFactory for property net.sf.jasperreports.extension.registry.factory.header.toolbar.style.provider
11:05:39,700 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for header.toolbar.style.provider using factory class net.sf.jasperreports.components.headertoolbar.HeaderToolbarConditionalStyleProviderExtensionFactory
11:05:39,701 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.headertoolbar.HeaderToolbarParameterContributorExtensionFactory for property net.sf.jasperreports.extension.registry.factory.header.toolbar.parameter.contributor
11:05:39,701 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for header.toolbar.parameter.contributor using factory class net.sf.jasperreports.components.headertoolbar.HeaderToolbarParameterContributorExtensionFactory
11:05:39,702 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.governors.GovernorExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.governor
11:05:39,703 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for governor using factory class net.sf.jasperreports.governors.GovernorExtensionsRegistryFactory
11:05:39,704 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.web.util.ContentTypeMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.content.type.mapping
11:05:39,704 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for content.type.mapping using factory class net.sf.jasperreports.web.util.ContentTypeMappingExtensionsRegistryFactory
11:05:39,706 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.data.DefaultDataAdapterServiceExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.data.adapter.services
11:05:39,706 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for data.adapter.services using factory class net.sf.jasperreports.data.DefaultDataAdapterServiceExtensionsRegistryFactory
11:05:39,709 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.web.util.JacksonMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.jackson.mapping
11:05:39,709 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for jackson.mapping using factory class net.sf.jasperreports.web.util.JacksonMappingExtensionsRegistryFactory
11:05:39,710 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.engine.query.SQLQueryClauseFunctionsExtensions for property net.sf.jasperreports.extension.registry.factory.sql.clause.functions
11:05:39,710 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for sql.clause.functions using factory class net.sf.jasperreports.engine.query.SQLQueryClauseFunctionsExtensions
11:05:39,719 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.components
11:05:39,720 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for components using factory class net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory
11:05:39,746 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.extensions.DefaultExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.default
11:05:39,746 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for default using factory class net.sf.jasperreports.extensions.DefaultExtensionsRegistryFactory
11:05:39,748 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.repo.DefaultRepositoryExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.repository
11:05:39,748 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for repository using factory class net.sf.jasperreports.repo.DefaultRepositoryExtensionsRegistryFactory
11:05:39,749 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.util.CastorMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.castor.mapping
11:05:39,749 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for castor.mapping using factory class net.sf.jasperreports.util.CastorMappingExtensionsRegistryFactory
11:05:39,750 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.types.date.DateRangeQueryClauseExtensions for property net.sf.jasperreports.extension.registry.factory.date.range.clause.functions
11:05:39,751 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for date.range.clause.functions using factory class net.sf.jasperreports.types.date.DateRangeQueryClauseExtensions
11:05:39,754 DEBUG DefaultExtensionsRegistry,main:158 - Loading JasperReports extension properties resource jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-5.1.2.jar!/jasperreports_extension.properties
11:05:39,758 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.engine.style.PropertyStyleProviderExtensionFactory for property net.sf.jasperreports.extension.registry.factory.property.style.provider
11:05:39,766 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for property.style.provider using factory class net.sf.jasperreports.engine.style.PropertyStyleProviderExtensionFactory
11:05:39,766 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.headertoolbar.HeaderToolbarConditionalStyleProviderExtensionFactory for property net.sf.jasperreports.extension.registry.factory.header.toolbar.style.provider
11:05:39,767 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for header.toolbar.style.provider using factory class net.sf.jasperreports.components.headertoolbar.HeaderToolbarConditionalStyleProviderExtensionFactory
11:05:39,767 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.headertoolbar.HeaderToolbarParameterContributorExtensionFactory for property net.sf.jasperreports.extension.registry.factory.header.toolbar.parameter.contributor
11:05:39,767 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for header.toolbar.parameter.contributor using factory class net.sf.jasperreports.components.headertoolbar.HeaderToolbarParameterContributorExtensionFactory
11:05:39,767 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.governors.GovernorExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.governor
11:05:39,768 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for governor using factory class net.sf.jasperreports.governors.GovernorExtensionsRegistryFactory
11:05:39,768 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.web.util.ContentTypeMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.content.type.mapping
11:05:39,768 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for content.type.mapping using factory class net.sf.jasperreports.web.util.ContentTypeMappingExtensionsRegistryFactory
11:05:39,768 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.data.DefaultDataAdapterServiceExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.data.adapter.services
11:05:39,776 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for data.adapter.services using factory class net.sf.jasperreports.data.DefaultDataAdapterServiceExtensionsRegistryFactory
11:05:39,776 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.web.util.JacksonMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.jackson.mapping
11:05:39,776 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for jackson.mapping using factory class net.sf.jasperreports.web.util.JacksonMappingExtensionsRegistryFactory
11:05:39,776 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.engine.query.SQLQueryClauseFunctionsExtensions for property net.sf.jasperreports.extension.registry.factory.sql.clause.functions
11:05:39,776 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for sql.clause.functions using factory class net.sf.jasperreports.engine.query.SQLQueryClauseFunctionsExtensions
11:05:39,777 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.components
11:05:39,777 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for components using factory class net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory
11:05:39,777 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.extensions.DefaultExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.default
11:05:39,777 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for default using factory class net.sf.jasperreports.extensions.DefaultExtensionsRegistryFactory
11:05:39,777 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.repo.DefaultRepositoryExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.repository
11:05:39,778 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for repository using factory class net.sf.jasperreports.repo.DefaultRepositoryExtensionsRegistryFactory
11:05:39,778 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.util.CastorMappingExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.castor.mapping
11:05:39,778 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for castor.mapping using factory class net.sf.jasperreports.util.CastorMappingExtensionsRegistryFactory
11:05:39,778 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.types.date.DateRangeQueryClauseExtensions for property net.sf.jasperreports.extension.registry.factory.date.range.clause.functions
11:05:39,778 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for date.range.clause.functions using factory class net.sf.jasperreports.types.date.DateRangeQueryClauseExtensions
11:05:39,779 DEBUG DefaultExtensionsRegistry,main:158 - Loading JasperReports extension properties resource jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-functions-5.1.2.jar!/jasperreports_extension.properties
11:05:39,779 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.functions.FunctionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.functions
11:05:39,779 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for functions using factory class net.sf.jasperreports.functions.FunctionsRegistryFactory
11:05:39,786 DEBUG DefaultExtensionsRegistry,main:158 - Loading JasperReports extension properties resource jar:file:/opt/lampp/htdocs/crm2/modules/zr2_Report/jasper/jasperreports-fonts-5.1.2.jar!/jasperreports_extension.properties
11:05:39,787 DEBUG DefaultExtensionsRegistry,main:208 - Instantiating registry of type net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory for property net.sf.jasperreports.extension.registry.factory.simple.font.families
11:05:39,787 DEBUG DefaultExtensionsRegistry,main:233 - Instantiating extensions registry for simple.font.families using factory class net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
  • 写回答

1条回答 默认 最新

  • dongxiatuo9827 2013-07-19 20:28
    关注

    Well, finally I found the error, after searching a lot I came to find this post (http://blog.codyjung.com/2011/05/29/problems-with-lampp-and-exec/)

    It turns out that lampp uses his own libraries, so I got to override /opt/lampp/lib/libgcc_s.so.1 library with the server one (/lib/libgcc_s.so.1), restart apache, and it works right away.

    评论

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧