ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joël FÉRAUD <Joel.Fer...@Sun.COM>
Subject Bugs with <rmic> task: sourcebase, iiop
Date Wed, 16 Apr 2003 16:14:50 GMT
rmic-rjmx:
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class omitted as javax/management/remote/rmi/RMIMBeanServerConnectionImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIServerImpl.class omitted as javax/management/remote/rmi/RMIServerImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class added as javax/management/remote/rmi/_RMIMBeanServerConnectionImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIMBeanServerConnectionImpl
      [rmic] javax/management/remote/rmi/RMIServerImpl.class added as javax/management/remote/rmi/_RMIServerImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIServerImpl
rmic-rjmx:
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class omitted as javax/management/remote/rmi/RMIMBeanServerConnectionImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIServerImpl.class omitted as javax/management/remote/rmi/RMIServerImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class added as javax/management/remote/rmi/_RMIMBeanServerConnectionImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIMBeanServerConnectionImpl
      [rmic] javax/management/remote/rmi/RMIServerImpl.class added as javax/management/remote/rmi/_RMIServerImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIServerImpl

Hello,

The two behaviours described below look to me as bugs. Could someone confirm before I log
this into bugzilla?
I am using Ant 1.5.3 on jdk 1.4.1_02.


1. The most annoying bug happens when using <rmic> target with iiop="yes".
It recompiles the classes systematically, even if there has been no changes.

An execution with verbose shows that when the <rmic> task checks if it needs to recompile
or not, it does not prepend the path to look for the generated classes by org/omg/stub whereas
it should when iiop is on.

For now, I am going to workaround this by conditionning my rmic with iiop to a property set
by <uptodate>...


2. Less annoying, when sourcebase is set and different from base, the generated java files
are NOT moved (or even copied) to sourcebase at all when iiop is on (I guess for the same
reason as above: it does not look in the right place).

    When iiop is not set, the behaviour is not exactly what is described in the doc: the generated
java files are copied to sourcebase but they are not removed from base (whereas the doc says
it should MOVE the files).


Below is an extract of by build.xml and a log of a verbose execution...

Thanks,
Joel


---

     <target name="rmic-rjmx" depends="init,classes-rjmx_mandatory"
             description="Generate RMI stub and skeleton class files for remote objects into
${dir.build.classes.rjmx_mandatory-rmic}. Keep generated java files" >

         <mkdir dir="${dir.build.classes.rjmx_mandatory-rmic}" />
         <mkdir dir="${dir.build.src.rjmx_mandatory-rmic}" />

	<!-- JRMP Stubs and Tie -->

	<!-- [JF] Note: BUG: when sourcebase attribute is set and different from base,
			<rmic> copies the generated java files to sourcebase but does NOT removes them from
base
	 -->

         <rmic 	base="${dir.build.classes.rjmx_mandatory-rmic}"
		sourcebase="${dir.build.src.rjmx_mandatory-rmic}"
		classname="javax.management.remote.rmi.RMIMBeanServerConnectionImpl"
		includeAntRuntime="no"
		includeJavaRuntime="no"
		stubversion="1.2"
		>
	   <classpath refid="classpath.tobuild.rjmx_mandatory-rmic" />
	</rmic>

	<rmic	base="${dir.build.classes.rjmx_mandatory-rmic}"
		sourcebase="${dir.build.src.rjmx_mandatory-rmic}"
		classname="javax.management.remote.rmi.RMIServerImpl"
		includeAntRuntime="no"
		includeJavaRuntime="no"
		stubversion="1.2"
		>
            <classpath refid="classpath.tobuild.rjmx_mandatory-rmic" />
         </rmic>



	<!-- IIOP Stubs and Tie -->

	<!-- [JF] Note: BUGS: <rmic> task behaviour when iiop is on:
	   		- always regenerates and recompiles, even if classes unchanged between 2 successive
builds
			  (cause: the check wether there is a need to recompile does not prepend path to generated
classes by org/omg/stub).
			- neither copies nor moves generated java files to sourcebase if different from base.
	 -->

	<rmic 	base="${dir.build.classes.rjmx_mandatory-rmic}"
		sourcebase="${dir.build.src.rjmx_mandatory-rmic}"
		classname="javax.management.remote.rmi.RMIMBeanServerConnectionImpl"
		includeAntRuntime="no"
		includeJavaRuntime="no"
		stubversion="1.2"
		iiop="yes"
		>
	   <classpath refid="classpath.tobuild.rjmx_mandatory-rmic" />
	</rmic>

	<rmic	base="${dir.build.classes.rjmx_mandatory-rmic}"
		sourcebase="${dir.build.src.rjmx_mandatory-rmic}"
		classname="javax.management.remote.rmi.RMIServerImpl"
		includeAntRuntime="no"
		includeJavaRuntime="no"
		stubversion="1.2"
		iiop="yes"
		>
            <classpath refid="classpath.tobuild.rjmx_mandatory-rmic" />
         </rmic>


     </target>


---

rmic-rjmx:
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class omitted as javax/management/remote/rmi/RMIMBeanServerConnectionImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIServerImpl.class omitted as javax/management/remote/rmi/RMIServerImpl_Stub.class
is up to date.
      [rmic] javax/management/remote/rmi/RMIMBeanServerConnectionImpl.class added as javax/management/remote/rmi/_RMIMBeanServerConnectionImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIMBeanServerConnectionImpl
      [rmic] javax/management/remote/rmi/RMIServerImpl.class added as javax/management/remote/rmi/_RMIServerImpl_Tie.class
doesn't exist.
      [rmic] RMI Compiling 1 class to /export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic
      [rmic] Using SUN rmic compiler
      [rmic] IIOP has been turned on.
      [rmic] Compilation arguments:
      [rmic] '-d'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic'
      [rmic] '-classpath'
      [rmic] '/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory-rmic:/net/amos/export/pub/sasl/lib/sasl.jar:/qa/jmx/deliveries/jmx_1.2.r08/jmx_1.2_ri_bin/lib/jmxri.jar:/export/user/jferaud/workspaces/jdm51+jmx12/ws/rjmx10_split.ws/build/classes/rjmx_mandatory'
      [rmic] '-v1.2'
      [rmic] '-keepgenerated'
      [rmic] '-iiop'
      [rmic]
      [rmic] The ' characters around the executable and arguments are
      [rmic] not part of the command.
      [rmic] File to be compiled:    javax.management.remote.rmi.RMIServerImpl

---


Mime
View raw message