Add OSGI MANIFEST.MF during ide-dependencies #16

Merged
merged 5 commits into from Jan 4, 2017

Projects

None yet

3 participants

@chrisrueger
Contributor

Hi Daniel,
as discussed in https://www.mail-archive.com/dev@freemarker.incubator.apache.org/msg00687.html I finally found time to commit the changes.

Basically what the 4 commits are doing:

  1. during build of target ide-dependencies the META-INF folder inside generated freemarker.jar is extracted
  2. for that I adjusted the build.xml and README to point out this change. The ide-dependencies target now requires the freemarker.jar to be present. before it was not needed.

Why is this useful?

Because I need the META-INF/MANIFEST.MF in my Eclipse / OSGI at development time so that other bundles in the same Eclipse workspace recognize my Freemarker Workspace project (which I imported before based on the README description).

In our company we have a Eclipse / OSGI product and we would like to include the Freemarker source code project directly in eclipse. This makes it much easier to contribute to Freemarker, because we can directly test it during our own development.

Best regards,
Christoph

Christoph and others added some commits Dec 27, 2016
Christoph Extract META-INF folder with files like MANIFEST.MF from freemarker.j…
…ar and put it in base directory for eclipse
1d59bae
@chrisrueger chrisrueger Extract META-INF folder with files like MANIFEST.MF from freemarker.j…
…ar and put it in base directory for eclipse
8358009
@chrisrueger chrisrueger correcting section about IDE-SETUP in README: now java clean jar is r…
…equired because the unpacking of the META-INF folder requires the freemarker.jar to be present which is removed by clean. also remove the META-INF folder for the ant clean target
8067aad
@chrisrueger chrisrueger adding META-INF folder to .gitignore 312522e
@ddekany
Contributor
ddekany commented Dec 27, 2016

Thanks, I will look into this when I get to it. It seems that you don't have a CLA at Apache; if that's right, it must be addressed before I can merge, so please see http://www.apache.org/dev/new-committers-guide.html#cla.

README
@@ -138,7 +138,7 @@ different version or an entierly different IDE, still read this, and try to
apply it to your development environment:
- Install Ant and Ivy, if you haven't yet; see earlier.
-- From the command line, run `ant clean javacc ide-dependencies`. (Note that
+- From the command line, run `ant clean jar javacc ide-dependencies`. (Note that
@ddekany
ddekany Dec 27, 2016 Contributor

jar implies javacc, so javacc can be omitted.

@chrisrueger
chrisrueger Dec 27, 2016 Contributor

thanks for pointing out. pushed the change.

@ddekany
Contributor
ddekany commented Dec 27, 2016

I wonder if the extracted META-INF can be (and should be) put inside ide-dependencies (or inside a build subdirectory). Also, even if META-INF is in the root as now, don't you need some additional step for Eclipse to recognize it?

@chrisrueger
Contributor

I wonder if the extracted META-INF can be (and should be) put inside ide-dependencies (or inside a build subdirectory). Also, even if META-INF is in the root as now, don't you need some additional step for Eclipse to recognize it?

Actually for the Eclipse PDE tools the META-INF/MANIFEST.MF needs to be on the project root. That is the case for all the OSGI bundles I know. I cannot prove it with an official reference, but I found the following Eclipse bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=153023 and https://bugs.eclipse.org/bugs/show_bug.cgi?id=154079#c11
Here they discuss the option to change the location of the MANIFEST.MF file and why it is where it is. This is still open and seems to be a huge change.

@ddekany
Contributor
ddekany commented Dec 31, 2016

OK, then that META-INF directory will be good where it is now. When Apache receives your CLA I will merge this.

@chrisrueger
Contributor

Apache CLA is submitted. Waiting for approval.

@asfgit asfgit merged commit f2adf1a into apache:2.3-gae Jan 4, 2017
@ddekany
Contributor
ddekany commented Jan 4, 2017 edited

ASF has confirmend receiving the CLA. Thank you, merged!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment