Thomas Holland
2011-06-19 17:24:19 UTC
Hi,
hope this is the right place for some Minerva issues as I haven't found
any Minerva-specific lists.
I am currently 'minerva-fying' my little Eclipse Plugin (
http://sourceforge.net/projects/avr-eclipse/ ) and the
"java.lang.RuntimeException: Bundle org.aniszczyk.minerva.tests.ui is
not found" issue had me pulling out my hair for almost two days until I
found the culprit:
In the file org.aniszczyk.minerva.tests.ui/META-INF/MANIFEST.MF in the
line
Fragment-Host: org.aniszczyk.minerva.tests.core;bundle-version="1.0.0.qualifier"
the ".qualifier" ending was causing the fail. Removing ".qualifier" and
the UI Tests works, almost, as now SWTBot was barfing due to no tests to
run.
Adding an empty test method
@Test
public void someTest() {
// Do nothing (for now)
}
to
org.aniszczyk.minerva.tests.ui/src/org/aniszczyk/minerva/tests/ui/SimpleUITestCase.javafixed
that and my Minerva build was finally successful.
Now log4j still complaints that the log4j system is not properly
initialized but that does not break the build. AFAIK log4j wants to have
a log4j.xml or log4j.properties file in the classpath, but I have not
looked into this yet.
BTW is there any particular advantage in making the tests.ui project a
fragment of the tests.core plugin?
Some other issues with Minerva that I found:
1. Minerva currently uses a no longer existing Snapshot repository of
the Orbit site in the parent pom.xml:
<orbit-site>http://download.eclipse.org/tools/orbit/downloads/drops/S20110124210048/repository</orbit-site>
this should be replaced by the current Orbit release repository
<orbit-site>http://download.eclipse.org/tools/orbit/downloads/drops/R20110523182458/repository/</orbit-site>
2. In the UI tests pom.xml: The site referenced in the line
<local-p2-site>file:/${basedir}/../org.aniszczyk.minerva-updatesite/target/site</local-p2-site>
does not exist, because a) "org.aniszczyk-updatesite" is actually named
"org.aniszczyk.minerva-repository/" in the filesystem and b) as it is a
repository and not an update-site it should end with
.../target/repository and not .../target/site.
I am not sure if the whole thing is needed at all, as Minerva builds
fine without it.
Anyway the "org.aniszczyk.minerva-updatesite" project should be renamed
to "org.aniszczyk.minerva-repository" in eclipse to reflect the real
pathname and the real content.
3. A general suggestion for Minerva: I think it would be more
Eclipse-friendly to move the parent pom.xml from the root directory to
its own Eclipse project, like "org.aniszczyk.minerva-parent", because as
it is now the file is not shown in Eclipse when doing an "Import
Projects" from the Minerva git repository.
This would, of course, require a
<relativePath>../org.aniszczyk.minerva-parent/pom.xml</relativePath>
entry in all sub pom.xml files.
4. Coming back to the UI tests project. I think in the manifest.mf all
Import-Package and probably all Required-Bundle entries can be replaced
by the org.eclipse.swtbot.go bundle.
Also there is some stuff in the UI tests pom.xml that seems to be a
leftover from from whichever Project Minerva was extracted from (EGit?),
like a dependecy on org.eclipse.cvs.feature.group. (Are all the
dependencies required anyway? Minerva builds fine without them. But then
again I am absolutely new to maven and tycho, still trying to wrap my
head around what's going on inside the build)
5. Many more questions and suggestions, but I think I'll stop here for
now :-)
BTW, what would be the best way to contribute code/fixes to Minerva at
the moment (while it is still at github)?
Thomas
hope this is the right place for some Minerva issues as I haven't found
any Minerva-specific lists.
I am currently 'minerva-fying' my little Eclipse Plugin (
http://sourceforge.net/projects/avr-eclipse/ ) and the
"java.lang.RuntimeException: Bundle org.aniszczyk.minerva.tests.ui is
not found" issue had me pulling out my hair for almost two days until I
found the culprit:
In the file org.aniszczyk.minerva.tests.ui/META-INF/MANIFEST.MF in the
line
Fragment-Host: org.aniszczyk.minerva.tests.core;bundle-version="1.0.0.qualifier"
the ".qualifier" ending was causing the fail. Removing ".qualifier" and
the UI Tests works, almost, as now SWTBot was barfing due to no tests to
run.
Adding an empty test method
@Test
public void someTest() {
// Do nothing (for now)
}
to
org.aniszczyk.minerva.tests.ui/src/org/aniszczyk/minerva/tests/ui/SimpleUITestCase.javafixed
that and my Minerva build was finally successful.
Now log4j still complaints that the log4j system is not properly
initialized but that does not break the build. AFAIK log4j wants to have
a log4j.xml or log4j.properties file in the classpath, but I have not
looked into this yet.
BTW is there any particular advantage in making the tests.ui project a
fragment of the tests.core plugin?
Some other issues with Minerva that I found:
1. Minerva currently uses a no longer existing Snapshot repository of
the Orbit site in the parent pom.xml:
<orbit-site>http://download.eclipse.org/tools/orbit/downloads/drops/S20110124210048/repository</orbit-site>
this should be replaced by the current Orbit release repository
<orbit-site>http://download.eclipse.org/tools/orbit/downloads/drops/R20110523182458/repository/</orbit-site>
2. In the UI tests pom.xml: The site referenced in the line
<local-p2-site>file:/${basedir}/../org.aniszczyk.minerva-updatesite/target/site</local-p2-site>
does not exist, because a) "org.aniszczyk-updatesite" is actually named
"org.aniszczyk.minerva-repository/" in the filesystem and b) as it is a
repository and not an update-site it should end with
.../target/repository and not .../target/site.
I am not sure if the whole thing is needed at all, as Minerva builds
fine without it.
Anyway the "org.aniszczyk.minerva-updatesite" project should be renamed
to "org.aniszczyk.minerva-repository" in eclipse to reflect the real
pathname and the real content.
3. A general suggestion for Minerva: I think it would be more
Eclipse-friendly to move the parent pom.xml from the root directory to
its own Eclipse project, like "org.aniszczyk.minerva-parent", because as
it is now the file is not shown in Eclipse when doing an "Import
Projects" from the Minerva git repository.
This would, of course, require a
<relativePath>../org.aniszczyk.minerva-parent/pom.xml</relativePath>
entry in all sub pom.xml files.
4. Coming back to the UI tests project. I think in the manifest.mf all
Import-Package and probably all Required-Bundle entries can be replaced
by the org.eclipse.swtbot.go bundle.
Also there is some stuff in the UI tests pom.xml that seems to be a
leftover from from whichever Project Minerva was extracted from (EGit?),
like a dependecy on org.eclipse.cvs.feature.group. (Are all the
dependencies required anyway? Minerva builds fine without them. But then
again I am absolutely new to maven and tycho, still trying to wrap my
head around what's going on inside the build)
5. Many more questions and suggestions, but I think I'll stop here for
now :-)
BTW, what would be the best way to contribute code/fixes to Minerva at
the moment (while it is still at github)?
Thomas