Jump to content
We've recently updated our Privacy Statement, available here ×

Pixel

Members
  • Posts

    12
  • Joined

  • Last visited

Pixel's Achievements

Rookie

Rookie (2/14)

  • Week One Done
  • One Month Later
  • One Year In
  • First Post Rare
  • Collaborator Rare

Recent Badges

0

Reputation

  1. NOTE: I am using 6.5.0, which is the next-to-last release that still supports JDK 1.7 but does not contain a bug introduced in 6.5.1. If this were not the case, hozawa's answer would have been correct.
  2. I still have an installation that runs under 1.7. There are some reports that will not run under that system, as it gives some errors about illegal binary revision 52. I am compiling the reports under ant. I do not see a direct way of directing the ant task to compile with 1.7. I tried creating a jasperreports.properties file and putting it in the path of JRAntCompileTask specifying 1.7, and that doesn't seem to work. For the record, here's the contents of jasperreports.properies file: org.eclipse.jdt.core.compiler.source=1.7org.eclipse.jdt.core.compiler.compliance=1.7org.eclipse.jdt.core.compiler.codegen.TargetPlatform=1.7[/code]This doesn't seem to change the behavior. Was support for this removed on 2013-05-08, or is that unrelated? Is there a way to get JRAntCompileTask to use 1.7? Here is the snippet from the build.xml file. <taskdef name="jrc" classname="net.sf.jasperreports.ant.JRAntCompileTask"> <classpath> <path path="${build.jars}/jasperreports.compile.17.jar"></path> <path> <fileset refid="jasperreports.jars"/> </path> </classpath> </taskdef> <target name="reports"> <jar destfile="${build.jars}/jasperreports.compile.17.jar" basedir="." includes="jasperreports.properties"/> <mkdir dir="${build.jrctmp}"/> <jrc srcdir="src" destdir="${build.classes}" tempdir="${build.jrctmp}" keepjava="true" xmlvalidation="true" > <classpath> <path path="${build.jars}/jasperreports.compile.17.jar"></path> <fileset refid="jasperreports.jars"/> <dirset dir="${build.classes}"/> <path refid="build.classpath"/> </classpath> <include name="**/*.jrxml"/> </jrc> </target>[/code]
  3. Disclaimer: I haven't ever really learned or used Ivy (or Maven or other dependency managers). This might not be best practice, it's just me flailing to try to get something to work, especially at step 7. Since there is no longer a proper distribution that contains the required files, my attempt at getting all of the necessary dependencies went like this: 1. Download Apache Ant from http://ant.apache.org/. 2. Download Apache Ivy from http://ant.apache.org/ivy/ 3. According to http://stackoverflow.com/questions/12677816/ant-target-failing-antlib-or-ivy-issue you should copy the ivy JAR file into ANT: copy C:devapacheivyapache-ivy-2.4.0ivy-2.4.0.jar C:devapacheantapache-ant-1.9.7lib 4. Make sure the "bin" folder under ANT is in your path, and that you have JAVA_HOME set to your favorite JDK (1.7 or higher). 5. Change into the unzipped jasperreport-6.3.0-project.zip folder, and type "ant -p" to see what targets are available. 6. Try "ant retrievelibs". Ant should then use ivy to download a bunch of files. It took about 80 seconds on my machine. FYI: If you really want to build JasperReports jars, try "ant alljars". At this step, I had problems with errors. I removed my .ivy2 folder ("rd /s C:Usersmyuserfolder.ivy2") and tried it again, and it seemed to build. Then "dir /s *.jar" reveals only the jasperreports jars, not the dependencies. 7. Since I started with a clean .ivy2 folder, I can dir a "dir /s C:Usersmyuserfolder.ivy2*.jar" and get a list of only the JAR files it downloaded for building JasperReports. I don't know what the best practice is, but I individually copied out the following files: groovy-all-2.4.5.jarcommons-logging-1.1.1.jarcommons-digester-2.1.jarcommons-collections-3.2.2commons-beanutils-1.9.0poi-3.10.1.jarjfreechart-1.0.19.jarjcommon-1.0.23.jarDepending on what features you are using in your reports, you may need more or fewer JAR files.
  4. If you're using SYS V init scripts and running in a container such a Tomcat, DON'T start the script directly with: sudo /etc/init.d/tomcat7 start That will start it without a clean environment. Instead, use the service command: sudo /sbin/service tomcat7 start
  5. If you're using SYS V init and running in a container such a Tomcat, DON'T start the script directly with: sudo /etc/init.d/tomcat7 start That will start it without a clean environment. Instead, use the service command: sudo /sbin/service tomcat7 start
  6. The logic in the JRVerticalFiller.fillPageBreak() method code fragment that stopbuggingme posted has changed, but this was still an issue as of 5.6.0. I haven't tried it with 6.1.x yet.
×
×
  • Create New...