[
http://issues.apache.org/jira/browse/JDO-264?page=comments#action_12361066 ]
Craig Russell commented on JDO-264:
-----------------------------------
I like the direction you're on, and have some specific comments.
I'd rewrite part of the objective as follows:
Currently we have properties iut.enhancer.sourcepath, iut.enhancer.classpath,
jdo.enhancer.sourcepath, and jdo.enhancer.classpath in project.properties, but
none of these are actually used in maven.xml. I see the value in setting
iut.enhancer.classpath in a properties file and adding it to the classpath in
maven.xml and this patch does that. I think that it is more readable and
convenient to set jdori.enhancer.*path in maven.xml. I don't know if users will
need to add items to iut.enhancer.sourcepath that we cannot foresee.
I think that if we define the enhancer execution classpath (where the
iut.enhancer.main and its dependencies can be found) and enhancer source
classpath (where the un-enhanced classes and .jdo metadata files are found)
plus enhancer properties (arbitrary command line arguments for the execution of
the enhancer) we are covered. Then there should be minimum requirement to
change the maven.xml but instead simply update the provided sample
iut.properties file (with all the properties commented).
1. +iut.enhancer.classpath = ${jpox.enhancer.jarfile}${path.separator}$...
It appears that with this patch you can still run iut.enhance right after
downloading the tck20 project and you will get the jpox implementation. I'm not
convinced that this is the right thing to do. I think I'd rather have it fail
with a message "Enhancer Main class is not specified" or something that
indicates that the user has to configure the installation to use an iut. We can
provide instructions on how to run JPOX as the iut but I feel uncomfortable
with having it run out-of-the-box.
2. +#jdo.enhancer.classpath = ${jpox.enhancer.jarfile}${path.separator}$...
Do your changes to this still allow JPOX enhancer to run as the JDO RI?
3. The use of "jdo" in the same context as "iut" to mean the RI bothers me a
bit. Can we use "jdori" instead of "jdo" for this purpose, e.g. instead of:
jdo.enhancer.options = -v -d "${enhanced.dir}"
jdo.enhancer.args = ${jdo.tck.jdometadata.files}
jdo.enhancer.sourcepath =
${jdo.tck.testclasses.dir}${path.separator}${jdo.jdoapi.jarfile}${path.separator}${junit.jarfile}${path.separator}${log4j.jarfile}
jdo.enhancer.classpath =
${jpox.enhancer.jarfile}${path.separator}${jpox.jdori.jarfile}${path.separator}${jdo.jdoapi.jarfile}${path.separator}$
we could use:
jdori.enhancer.options = -v -d "${enhanced.dir}"
jdori.enhancer.args = ${jdo.tck.jdometadata.files}
jdori.enhancer.sourcepath =
${jdo.tck.testclasses.dir}${path.separator}${jdo.jdoapi.jarfile}${path.separator}${junit.jarfile}${path.separator}${log4j.jarfile}
jdori.enhancer.classpath =
${jpox.enhancer.jarfile}${path.separator}${jpox.jdori.jarfile}${path.separator}${jdo.jdoapi.jarfile}${path.separator}$
4. In maven.xml, the element naming seems inconsistent with the other files. We
have:
+ <!-- Paths needed for enhancement by iut enhancer. -->
+ <path id="enhance.iut.classpath">
Shouldn't this be e.g.
+ <!-- Paths needed for enhancement by iut enhancer. -->
+ <path id="iut.enhancer.classpath">
> Fix issues in maven.xml preventing iut goals from running properly
> ------------------------------------------------------------------
>
> Key: JDO-264
> URL: http://issues.apache.org/jira/browse/JDO-264
> Project: JDO
> Type: Bug
> Components: tck20
> Reporter: Michelle Caisse
> Assignee: Michelle Caisse
> Attachments: enhanceClasspath.patch
>
> maven.xml has not been properly tested on an implementation under test (iut).
> Test and fix any problems encountered.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira