The following IDL description ONLY compiles with jacidl when NO package name replacement via i2jpackage is used for Interface I1: --------------------- module A { interface I1 { exception Ex1 { }; void testOp1(); }; interface I2 : I1 { void testOp2( ) raises (Ex1); }; }; ----------------- As soon as I use i2jpackage (ANT IDL task) to substitute I1 with a replacement string (for instance: <i2jpackage names="I1:interface1"/>) jacidl fails with the following error: [jacorb.idl] ERROR : test.idl, line:24(41): Undefined name: A.I2.Ex1 Can't recover from previous error(s), giving up. void testOp2( ) raises (Ex1 [jacorb.idl] ERROR : test.idl, line:24(41): Undefined name: A.I2.Ex1 Can't recover from previous error(s), giving up. Note: The same error exists in jacorb 3.1 IDL.jar