ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chavdar Botev" <cbo...@gmail.com>
Subject Re: a problem compiling a Java 5 project with generics
Date Tue, 17 Oct 2006 07:20:43 GMT
Hi

For some reason, the mailing server included only the first
attachment. Since this is the fourth or the fifth time I am trying to
send the java files, I give up. I'll inline them in the message.

// src/test/Base.java
package test;
public class Base {}


// src/test/Sub.java
package test;
public class Sub extends Base {}

// src/test/Test1.java
package test;
public class Test1<T extends Base> {
	public class Inner1 {
		protected T v;
		public Inner1(T v) {this.v = v;}	
		public T getV() {return this.v;}
	}	
	public Inner1 getInner(T v) {return new Inner1(v);}	
}

// src/test/Test2.java
package test;
public class Test2<T extends Base> extends Test1<T> {
	public class Inner2 extends Inner1 {
		public Inner2(T v) {super(v);}		
		//public T getV() {return this.v;}
	}
}

// src/test/Test3.java
package test;
public class Test3 extends Test2<Sub> {
	public class Inner3 extends Inner2 {
		public Inner3(Sub v) {super(v);}
		public Sub p() {return this.getV();}
	}

	public Inner3 g() {
		return new Inner3(new Sub());
	}
}


HTH,
Chavdar


On 10/16/06, Petar Tahchiev <paranoiabla@gmail.com> wrote:
> On 17/10/06, Chavdar Botev <cbotev@gmail.com> wrote:
> >
> > Hi!
> >
> > I've come accross the following problem trying to compile Java 5
> > classes with generics using Ant 1.6.5. I've attached project
> > with sample Java classes and a build.xml file.
> >
> > NOTE: Please create a src/test subdirectory and save the attached
> > .java files into it. The mailing list server gave me a hard time
> > acepting an email with the archived project files. :(
> >
> > A clean build of the above project works just fine and compiles
> > without a problem. If after that, I touch the Test3.java file the
> > build fails with the following error:
> >
> [javac] C:\src\appforge\test\src\test\Test3.java:5: incompatible types
> > [javac] found   : test.Base
> > [javac] required: test.Sub
> > [javac] public Sub p() {return this.getV();}
> > [javac] ^
> > [javac] 1 error
>
>
> I must admit that this behaviour is really strange. I am interested in
> helping you but the problem is that I didn't receive any .java files. Please
> try to prvide them again.
>
>
> Initially, I thought that this was a problem with the Java compiler.
> > After touching Test3.java, I tried running javac manually:
> >
> > javac -sourcepath src -d bin -g -source 1.5 -target 1.5 src\test\*.java
> >
> > It turned out that with the above command-line the project compiled
> > OK. The project also compiles without a problem in Eclipse 3.2.1.
> >
> > Am I missing anything? It is my understanding that the build file and
> > the command line should produce the same results.
> >
> > Upon further experimentation, if I uncomment the method in Test2.java
> > fixes the problem. Touching Test3.java does not break the build.
> >
> > Thanks,
> > Chavdar
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> > For additional commands, e-mail: user-help@ant.apache.org
> >
> >
> >
>
>
> --
> Regards, Petar!
> Karlovo, Bulgaria.
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message