Ok, got past that (thanks to much help from Jason on IRC):
compileJava {
options.fork(executable: '/opt/java/jdk-1.6/bin/javac')
}
However, I am not able to get the dependencies to work properly. It
works fine if I just do:
dependencies {
compile project(':core')
}
But that gives trouble later when I go to do:
jar {
from { project(':jdbc3').sourceSets.main.classes }
from { project(':jdbc4').sourceSets.main.classes }
}
complaining about:
* What went wrong:
Circular dependency between tasks. Cycle includes task
':core:uploadDefaultInternal'.
Looking closer at you suggestions, you had actually said to use:
dependencies {
compile project(':core').sourceSets.main.classes
}
To reference the classes directory rather than the jar. However, that
is leading to this on my system:
Cause: No such property: sourceSets for class:
org.gradle.api.internal.artifacts.dependencies.DefaultProjectDependency
Was unable to find DefaultProjectDependency in javadocs at
http://www.gradle.org/0.8/docs/javadoc/ to check.
On Thu, 2009-10-08 at 23:55 -0500, Steve Ebersole wrote:
> I am trying to figure out exactly how I can specify that a different JDK
> (different from the one used to launch gradle) be used for the javac
> tasks for a given (sub)project. Any pointers?
>
> On Wed, 2009-10-07 at 10:14 -0500, Steve Ebersole wrote:
> > The difficulty here is that this does not fit well with IDEs (at least
> > not the IDEs with which I am familiar). Most (all?) IDEs want to
> > associate a JDK with each module/project. So the approach of using
> > multiple modules/projects here fits best IMO because it can be used in
> > gradle as well as in an IDE.
> >
> > But I do love that gradle gives you this kind of flexibility.
> >
> >
> > On Wed, 2009-10-07 at 08:39 +1100, Adam Murdoch wrote:
> > > You don't necessarily need to use multiple projects if you don't want
> > > to. A single project can have multiple groups of source directories,
> > > known as source sets. Each source set has its own compile task which you
> > > can configure independently - including which javac to use.
> > >
> > > So, given a single project with a layout something like:
> > > src/common/java
> > > src/jdbc3/java
> > > src/jdbc4/java
> > >
> > > You could define a source set for each of these source directories, and
> > > assemble the classes into a single jar. Here is a (complete) example:
> > >
> > > sourceSets {
> > > common // default source dir is 'src/common/java'
> > > jdbc3 {
> > > compileClasspath = common.classes + common.compileClasspath
> > > }
> > > jdbc4 {
> > > compileClasspath = common.classes + common.compileClasspath
> > > }
> > > }
> > >
> > > compileJdbc3Java {
> > > fork(executable: 'path-to-java5')
> > > }
> > >
> > > compileJdbc4Java {
> > > fork(executable: 'path-to-java6')
> > > }
> > >
> > > jar {
> > > from sourceSets.common.classes
> > > from sourceSets.jdbc3.classes
> > > from sourceSets.jdbc4.classes
> > > }
> >
--
Steve Ebersole <[email protected]>
Hibernate.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email