Ticket #813 (closed enhancement: fixed)
Opened 2011-10-10T13:58:50-05:00
Last modified 2012-05-23T12:30:55-05:00
Provide a way for Fiji's Build System to handle our pom.xml files without starting Maven
Reported by: | dscho | Owned by: | dscho |
---|---|---|---|
Priority: | minor | Milestone: |
|
Component: | Other | Version: | |
Severity: | minor | Keywords: | |
Cc: | Blocked By: | ||
Blocking: |
Description
The Fiji Build system (which is also used in the Script Editor for multi-file Java projects) is meant to be quite light-weight, yet we want it to handle IJ2, too (and eventually Mavenize the whole of Fiji).
Provide a simple class that can parse our pom.xml files (which are not really all that complicated) and perform two tasks: build the corresponding .jar files and run IJ2.
Change History
comment:1 Changed 2011-10-14T23:45:44-05:00 by dscho
comment:2 Changed 2011-10-20T14:06:01-05:00 by curtis
With the changes to system classpath vs. runtime classpath, the VerifyErrors are fixed now, aren't they?
Also, for the MiniMaven flag you could use just "--maven" instead since it is shorter to type.
comment:3 Changed 2011-10-21T18:57:31-05:00 by dscho
- Status changed from new to closed
- Resolution set to fixed
The VerifyErrors are indeed fixed now, and I can use Fiji Build to compile ImageJA (thanks to its new and shiny pom.xml), Image 5D, and the --mini-maven flag to compile IJ2.
There is still some work to do to build and install all IJ2 .jar files in one go, but that is more a Fiji ticket than anything else.
As to the name --maven, usually I would agree, but in this case, I would like to keep the "mini" as both a reminder to myself that I will not repeat the mistake of writing my own Make replacement again, and a reminder that Fiji Build needs to learn how to compile and install a bunch of .jar files from a catch-all pom.xml (such as IJ2's top-level one).
comment:4 Changed 2012-05-23T12:30:55-05:00 by bdezonia
- Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta2
Progress. The Fiji Build system has now gained a MiniMaven class which parses the pom.xml file hierarchy and can process the projects. The Fiji Build system automatically uses MiniMaven to build .jar files when it finds a pom.xml (but no Fakefile) in a submodule.
The MiniMaven class can actually do more, so the Fiji launcher also got the option --mini-maven. It can download the dependencies of, build, and run ImageJ (except for some VerifyError on _some_ setups, probably due to Javassist having problems with my ij.jar).