Git Product home page Git Product logo

eclipse-integration-gradle's Issues

providedCompile in war

I have a project which uses org.springsource.ide.eclipse.gradle.classpathcontainer to provide the library dependencies defined in build.gradle in the eclipse project. Various dependencies are marked with providedCompile.

When publishing the web-project onto the configured server in eclipse the dependencies marked with providedCompile are included in the produced war as well.

Is there a workaround available?

Import of Gradle IDE project with managed dependencies never finishes in Eclipse Kepler

Our team is working on a project that used Gradle for builds, but IvyDE in Eclipse. I'm trying to migrate from IvyDE to Gradle IDE.

I've done it on Mac with Kepler, latest Gradle IDE and Groovy-Eclipse plug-ins. Everything went fine. I've committed all the changes, but when my teammates tried to update project on Windows, they all were stuck on "Update Gradle Classpath for Foo" / "Get model for 'Foo': Build" 52%.

Today I reproduced the issue on the fresh Kepler / Windows 32-bit.

Steps:

  1. Install Grails IDE plug-in. (Tried it instead of Groovy-Eclipse)
  2. Install Lombok (the project needs Lombok to compile)
  3. Install Gradle IDE plug-in.
  4. Import of existing project into workspace.
  5. Stuck (Eclipse itself is responsive, but 'Update Gradle Classpath' never finishes

Couple of things I tried so far to no avail:

  • Configure Gradle to use system installation of Gradle 1.6 (this is the version that we use) and default user's home (C:\Users\Bar.gradle)
  • Resolve and cache all dependencies via command line: >gradle dependencies. It completed just fine.

Improve description of the Gradle IDE feature

I just installed the Gradle IDE via the p2 update manager and I see the following description:

This feature provides common components for tooling integration with Eclipse

I guess this could be more specific, like:

This feature provides common components for tooling integration of the Gradle build system with the Eclipse IDE.

Invalid Stream Header opening Installer

I download the Spring Tool Suite (STS 3.4.0 release for Mac) from http://spring.io/tools/sts.

I open the spring-tool-suite-3.4.0.RELEASE-e4.3.1-macosx-cocoa-x86_64-installer.dmg

I double click on the Installer Spring Tool Suite 3.4.0 RELEASE.

I get the following error:

Error: java.io.StreamCorruptedException: invalid stream header: 6578636C

Gradle IDE does not work with Eclipse 4.4.1 (STS 361)_

Hi,

Trying to create any Gradle Project or import existing I'm getting the below stack trace. I did not see this issue using STS360 (eclipse 4.4.0, I assume).

org.gradle.tooling.GradleConnectionException: Could not fetch model of type 'HierarchicalEclipseProject' using Gradle installation '/Users/andrey/dev/env/gradle-2.1'.
    at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
    at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:57)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:695)
    at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
    at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:48)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider.buildModel(GradleModelProvider.java:385)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.ensureModels(GradleModelProvider.java:290)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getModelProvider(GradleProject.java:569)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:629)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:654)
    at org.springsource.ide.eclipse.gradle.core.wizards.GradleImportOperation.allProjects(GradleImportOperation.java:713)
    at org.springsource.ide.eclipse.gradle.core.wizards.GradleImportOperation.importAll(GradleImportOperation.java:718)
    at org.springsource.ide.eclipse.gradle.core.wizards.NewGradleProjectOperation.createProjectContents(NewGradleProjectOperation.java:104)
    at org.springsource.ide.eclipse.gradle.core.wizards.NewGradleProjectOperation.perform(NewGradleProjectOperation.java:82)
    at org.springsource.ide.eclipse.gradle.ui.wizards.NewGradleProjectWizard$1.doit(NewGradleProjectWizard.java:48)
    at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable$1.run(GradleRunnable.java:49)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.gradle.launcher.daemon.client.DaemonConnectionException: Could not dispatch a message to the daemon.
    at org.gradle.launcher.daemon.client.DaemonClientConnection.dispatch(DaemonClientConnection.java:57)
    at org.gradle.launcher.daemon.client.DaemonClient.executeBuild(DaemonClient.java:242)
    at org.gradle.launcher.daemon.client.DaemonClient.execute(DaemonClient.java:194)
    at org.gradle.launcher.daemon.client.DaemonClient.execute(DaemonClient.java:77)
    at org.gradle.tooling.internal.provider.DaemonBuildActionExecuter.execute(DaemonBuildActionExecuter.java:40)
    at org.gradle.tooling.internal.provider.DaemonBuildActionExecuter.execute(DaemonBuildActionExecuter.java:27)
    at org.gradle.tooling.internal.provider.LoggingBridgingBuildActionExecuter.execute(LoggingBridgingBuildActionExecuter.java:54)
    at org.gradle.tooling.internal.provider.LoggingBridgingBuildActionExecuter.execute(LoggingBridgingBuildActionExecuter.java:31)
    at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:103)
    at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:90)
    at org.gradle.tooling.internal.provider.DefaultConnection.getModel(DefaultConnection.java:156)
    at org.gradle.tooling.internal.consumer.connection.ModelBuilderBackedModelProducer.produceModel(ModelBuilderBackedModelProducer.java:49)
    at org.gradle.tooling.internal.consumer.connection.GradleBuildAdapterProducer.produceModel(GradleBuildAdapterProducer.java:42)
    at org.gradle.tooling.internal.consumer.connection.BuildInvocationsAdapterProducer.produceModel(BuildInvocationsAdapterProducer.java:47)
    at org.gradle.tooling.internal.consumer.connection.ModelBuilderBackedConsumerConnection.run(ModelBuilderBackedConsumerConnection.java:55)
    at org.gradle.tooling.internal.consumer.DefaultModelBuilder$1.run(DefaultModelBuilder.java:59)
    at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.run(LazyConsumerActionExecutor.java:82)
    at org.gradle.tooling.internal.consumer.connection.ProgressLoggingConsumerActionExecutor.run(ProgressLoggingConsumerActionExecutor.java:58)
    at org.gradle.tooling.internal.consumer.connection.LoggingInitializerConsumerActionExecutor.run(LoggingInitializerConsumerActionExecutor.java:44)
    at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:55)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:695)
Caused by: org.gradle.messaging.remote.internal.MessageIOException: Could not write message Build{id=f9e78986-be3d-4cd0-b6b9-84ade9cf53b0.1, currentDir=/Users/andrey/dev/env/sts-bundle/sts-3.6.1.RELEASE/STS.app/Contents/MacOS} to '/0:0:0:0:0:0:0:1:60050'.
    at org.gradle.messaging.remote.internal.inet.SocketConnection.dispatch(SocketConnection.java:115)
    at org.gradle.launcher.daemon.client.DaemonClientConnection.dispatch(DaemonClientConnection.java:51)
    ... 23 more
Caused by: java.io.NotSerializableException: org.eclipse.osgi.internal.framework.EquinoxConfiguration$1
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1165)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:329)
    at java.util.HashMap.writeObject(HashMap.java:1001)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:950)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1482)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1413)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1159)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1535)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1413)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1159)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1535)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1413)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1159)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:329)
    at org.gradle.messaging.remote.internal.Message.send(Message.java:40)
    at org.gradle.messaging.remote.internal.DefaultMessageSerializer$MessageWriter.write(DefaultMessageSerializer.java:62)
    at org.gradle.messaging.remote.internal.inet.SocketConnection.dispatch(SocketConnection.java:112)
    ... 24 more

Issue running Spring tests/applications from STS with Gradle support

There seems to be an issue with STS/Gradle support when running/testing Spring projects.

I have installed the STS 3.6.2 together with Gradle support and the exception below was raised when I ran Spring tests. My app uses logback and it appears Gradle support added a logback jar on the test classpath causing the exception below:

java.lang.IllegalStateException: Failed to load ApplicationContext
    at org.springframework.test.context.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:91)
    at org.springframework.test.context.DefaultTestContext.getApplicationContext(DefaultTestContext.java:74)
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:116)
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:82)
    at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:212)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:199)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:251)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:253)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:216)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:82)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:60)
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:67)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:162)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.IllegalArgumentException: LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.slf4j.impl.SimpleLoggerFactory loaded from file:/home/julien/system/spring-tool-suite-3.6.2.RELEASE-e4.4-linux-gtk-x86_64/sts-3.6.2.RELEASE/plugins/org.springsource.ide.eclipse.gradle.toolingapi_3.6.2.201410090835-RELEASE/lib/slf4j-simple-1.7.5.jar). Object of class [org.slf4j.impl.SimpleLoggerFactory] must be an instance of class ch.qos.logback.classic.LoggerContext
    at org.springframework.util.Assert.isInstanceOf(Assert.java:339)
    at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:71)
    at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithSensibleDefaults(AbstractLoggingSystem.java:62)
    at org.springframework.boot.logging.AbstractLoggingSystem.beforeInitialize(AbstractLoggingSystem.java:45)
    at org.springframework.boot.logging.Slf4JLoggingSystem.beforeInitialize(Slf4JLoggingSystem.java:36)
    at org.springframework.boot.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:136)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:151)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:128)
    at org.springframework.boot.context.event.EventPublishingRunListener.publishEvent(EventPublishingRunListener.java:100)
    at org.springframework.boot.context.event.EventPublishingRunListener.started(EventPublishingRunListener.java:54)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:278)
    at org.springframework.boot.test.SpringApplicationContextLoader.loadContext(SpringApplicationContextLoader.java:105)
    at org.springframework.test.context.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:63)
    at org.springframework.test.context.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:83)
    ... 25 more

Android Gradle plugin

Hello

I try to use Gradle inside Eclipse with your plugin (Gradle Integration for Eclipse 3.3.0.RELEASE). My Eclipse is Android Developer Tools. My project is an Android project. I converted it to Gradle Project. I connected android plugin http://tools.android.com/tech-docs/new-build-system/user-guide version 0.5.6 using following command:

apply plugin: 'android'

In this case "Gradle Dependencies" disappeared from the classpath.

As result I would like to build my Android application using both ADT and Gradle.

Probably I make something wrong. Some working example could be very helpful.

Enhancing plugin with a possibility to detect relationship between generated artifacts and Eclipse Gradle projects

I have the following setup:

  • N Gradle (root )projects A1..An, each imported in Eclipse as a separate project
  • Some of the Gradle projects are dependent on artifacts (JARs) produced by other projects (they depend on snapshot versions), e.g. A1 is dependent on the artifact A2-SNAPSHOT.jar produced by A2.

When I change sources in A2 and add e.g. a new method, I'd like to be able to directly use this new method in A1, i.e. with autocompletion, etc. But today it is not possible, because this change is invisible to Eclipse. One should first build and locally deploy the artifact produced by A2. And only then Eclipse detects the change in the JAR and is able to provide autocompletion and so on.

It would be nice, if Eclipse could detect this kind of changes automatically without requiring a dedicated build/local deploy step. It would be much more convenient and less error-prone.

Idea: I can imagine that this feature would work, if the Eclipse project for A1 would depend on the Eclipse project for A2 (and with current Gradle Plugin and Gradle tooling it always depends on the JAR produced by A2 and therefore changes are not detected automatically). So, a possible solution could be that Gradle plugin detects that a given JAR is produced by a given Eclipse Gradle project and adds the dependency on that project automatically in the Eclipse project configuration.

What do you think?

myEclipse integration Gradle

Hi..

can you tell me how to integrate the gradle in myeclipse professional version, and also tell me how to create a java gradle project.

Error in installing gradle plugin-Gradle Integration for Eclipse(4.4)

Hi,
I am using STS 3.1.0 version and trying to install gradle plugin-Gradle Integration for Eclipse(4.4),but I am facing the problem while trying to install.
I am getting following error.

Provisioning exception
org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://download.springsource.com/release/TOOLS/third-party/m2e-sts310/site.xml.
at org.eclipse.equinox.internal.p2.updatesite.UpdateSite.loadActualSiteFile(UpdateSite.java:233)
at org.eclipse.equinox.internal.p2.updatesite.UpdateSite.load(UpdateSite.java:144)
at org.eclipse.equinox.internal.p2.updatesite.metadata.UpdateSiteMetadataRepositoryFactory.initializeRepository(UpdateSiteMetadataRepositoryFactory.java:99)
at org.eclipse.equinox.internal.p2.updatesite.metadata.UpdateSiteMetadataRepositoryFactory.load(UpdateSiteMetadataRepositoryFactory.java:59)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57)
at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758)
at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
at org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository.addChild(CompositeMetadataRepository.java:165)
at org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository.(CompositeMetadataRepository.java:105)
at org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepositoryFactory.load(CompositeMetadataRepositoryFactory.java:122)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57)
at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758)
at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
at org.eclipse.epp.internal.mpc.ui.operations.AbstractProvisioningOperation.addRepositories(AbstractProvisioningOperation.java:91)
at org.eclipse.epp.internal.mpc.ui.operations.ProfileChangeOperationComputer.computeInstallableUnits(ProfileChangeOperationComputer.java:262)
at org.eclipse.epp.internal.mpc.ui.operations.ProfileChangeOperationComputer.run(ProfileChangeOperationComputer.java:123)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://download.springsource.com/release/TOOLS/third-party/m2e-sts310/site.xml
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625)
at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveFileTransfer.getDecompressedStream(UrlConnectionRetrieveFileTransfer.java:542)
at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveFileTransfer.openStreams(UrlConnectionRetrieveFileTransfer.java:312)
at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:879)
at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:570)
at org.eclipse.ecf.provider.filetransfer.retrieve.MultiProtocolRetrieveAdapter.sendRetrieveRequest(MultiProtocolRetrieveAdapter.java:106)
at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.sendRetrieveRequest(FileReader.java:422)

Can any one please help me to resolve this problem..?

I even tried installing the gradle using below URL.

http://dist.springsource.com/snapshot/TOOLS/gradle/nightly (latest development snapshot)
http://dist.springsource.com/milestone/TOOLS/gradle (latest milestone build)
http://dist.springsource.com/release/TOOLS/gradle (latest release)

but all in vain.I will end up getting the following eror.

Unable to read repository at http://dist.springsource.com/snapshot/TOOLS/gradle/nightly/site.xml.
Unable to read repository at http://dist.springsource.com/snapshot/TOOLS/gradle/nightly/site.xml.
Server returned HTTP response code: 403 for URL: http://dist.springsource.com/snapshot/TOOLS/gradle/nightly/site.xml

please help me to resolve .

Thanks.

build.gradle file disappearing from project explorer but shows in navigator

The build.gradle file is disappearing from the top level view in project explorer in Eclipse. The file is still there on the file system and it still shows in the Navigator view.

To reproduce load this project that has a build.gradle, pom.xml, and gradlew/gradle.bat file in the root.
https://github.com/spring-guides/gs-convert-jar-to-war/tree/master/complete

Sometime after opening the build.gradle file and after deploying to Tomcat server with Eclipse wtp, the build.gradle file just stops showing up in project explorer even though in Navigator view it is still there.

I'm using the latest Eclipse Luna 4.4 on a Mac OSX 10.

gradle tooling must not always add java nature

the gradle tooling seems to always add a java nature to the project when doing a "refresh all". no matter if the gradle build actually adds a java nature or if dependency mgmt is enabled or not.

this is not always a good approach: e.g. i got an ear project which must not have a java nature or else i am not able to deploy it to the application server. i explicitly removed that nature in my gradle build (or rather the project does not even have the java plugin applied) but "refresh all" keeps re-adding it.

looks like this could be the code.
https://github.com/spring-projects/eclipse-integration-gradle/blob/master/org.springsource.ide.eclipse.gradle.core/src/org/springsource/ide/eclipse/gradle/core/wizards/GradleImportOperation.java#L419

the same happens on "convert to gradle project", i think:
https://github.com/spring-projects/eclipse-integration-gradle/blob/master/org.springsource.ide.eclipse.gradle.core/src/org/springsource/ide/eclipse/gradle/core/GradleProject.java#L690

would be cool if the gradle tooling supports non-java gradle projects as well.

thanks, zyro

Any chance to update to Kepler soon ?

With Kepler, it's not possible to add the STS plugin.

Is there any real incompatibility or it's just a matter of version declaration in a manifest ?

Gradle still not working with Eclipse 4.4.0

While many 4.4.1 related issues have been fixed over the last few days, it seems that there're still some fixes needed.

I'm working off of the latest nightly build from 10.4.2014 (which i assume will eventually turn into 3.6.2) of the integration plugin. The project uses the Gradle wrapper, using Gradle version 2.1.

When building the model for a Gradle project in the import dialog i receive the following error:

http://libgdx.badlogicgames.com/uploads/Screen%20Shot%202014-10-06%20at%2022.01.21-AlyY1ToIMQ.png

The log file contains this:

!ENTRY org.springsource.ide.eclipse.gradle.core 4 0 2014-10-06 22:10:28.518
!MESSAGE java.io.File cannot be cast to org.gradle.api.artifacts.Configuration
!STACK 0
java.lang.reflect.InvocationTargetException
    at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:109)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Caused by: org.gradle.tooling.GradleConnectionException: Could not fetch model of type 'HierarchicalEclipseProject' using Gradle distribution 'http://services.gradle.org/distributions/gradle-2.1-all.zip'.
    at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
    at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:57)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
    at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
    at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:48)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider.buildModel(GradleModelProvider.java:407)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.ensureModels(GradleModelProvider.java:294)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getModelProvider(GradleProject.java:569)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:629)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:654)
    at org.springsource.ide.eclipse.gradle.ui.wizards.GradleImportWizardPageOne$11.doit(GradleImportWizardPageOne.java:516)
    at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:101)
    ... 1 more
Caused by: java.lang.ClassCastException: java.io.File cannot be cast to org.gradle.api.artifacts.Configuration
    at org.gradle.plugins.ide.internal.IdeDependenciesExtractor.extractProjectDependencies(IdeDependenciesExtractor.java:52)
    at org.gradle.plugins.ide.internal.IdeDependenciesExtractor$extractProjectDependencies.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory$3.update(ClasspathFactory.groovy:45)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathEntryBuilder$update.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory.createEntries(ClasspathFactory.groovy:76)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory$createEntries.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.EclipseClasspath.resolveDependencies(EclipseClasspath.groovy:209)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.populate(EclipseModelBuilder.java:85)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.populate(EclipseModelBuilder.java:128)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.buildAll(EclipseModelBuilder.java:61)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.buildAll(EclipseModelBuilder.java:32)
    at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:68)
    at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:32)
    at org.gradle.tooling.internal.provider.ConfiguringBuildAction.run(ConfiguringBuildAction.java:134)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:47)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:35)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ReturnResult.execute(ReturnResult.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:70)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:45)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator.runCommand(DaemonStateCoordinator.java:258)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy.doBuild(StartBuildOrRespondWithBusy.java:49)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.HandleCancel.execute(HandleCancel.java:36)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.HandleStop.execute(HandleStop.java:30)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:39)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.CatchAndForwardDaemonFailure.execute(CatchAndForwardDaemonFailure.java:32)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.DefaultDaemonCommandExecuter.executeCommand(DefaultDaemonCommandExecuter.java:52)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.handleCommand(DefaultIncomingConnectionHandler.java:154)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.receiveAndHandleCommand(DefaultIncomingConnectionHandler.java:128)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.run(DefaultIncomingConnectionHandler.java:116)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Root exception:
org.gradle.tooling.GradleConnectionException: Could not fetch model of type 'HierarchicalEclipseProject' using Gradle distribution 'http://services.gradle.org/distributions/gradle-2.1-all.zip'.
    at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
    at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:57)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
    at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
    at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:48)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider.buildModel(GradleModelProvider.java:407)
    at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.ensureModels(GradleModelProvider.java:294)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getModelProvider(GradleProject.java:569)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:629)
    at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:654)
    at org.springsource.ide.eclipse.gradle.ui.wizards.GradleImportWizardPageOne$11.doit(GradleImportWizardPageOne.java:516)
    at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:101)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Caused by: java.lang.ClassCastException: java.io.File cannot be cast to org.gradle.api.artifacts.Configuration
    at org.gradle.plugins.ide.internal.IdeDependenciesExtractor.extractProjectDependencies(IdeDependenciesExtractor.java:52)
    at org.gradle.plugins.ide.internal.IdeDependenciesExtractor$extractProjectDependencies.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory$3.update(ClasspathFactory.groovy:45)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathEntryBuilder$update.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory.createEntries(ClasspathFactory.groovy:76)
    at org.gradle.plugins.ide.eclipse.model.internal.ClasspathFactory$createEntries.call(Unknown Source)
    at org.gradle.plugins.ide.eclipse.model.EclipseClasspath.resolveDependencies(EclipseClasspath.groovy:209)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.populate(EclipseModelBuilder.java:85)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.populate(EclipseModelBuilder.java:128)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.buildAll(EclipseModelBuilder.java:61)
    at org.gradle.plugins.ide.internal.tooling.EclipseModelBuilder.buildAll(EclipseModelBuilder.java:32)
    at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:68)
    at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:32)
    at org.gradle.tooling.internal.provider.ConfiguringBuildAction.run(ConfiguringBuildAction.java:134)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:47)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:35)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ReturnResult.execute(ReturnResult.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:70)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:45)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator.runCommand(DaemonStateCoordinator.java:258)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy.doBuild(StartBuildOrRespondWithBusy.java:49)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.HandleCancel.execute(HandleCancel.java:36)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.HandleStop.execute(HandleStop.java:30)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:39)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.CatchAndForwardDaemonFailure.execute(CatchAndForwardDaemonFailure.java:32)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.DefaultDaemonCommandExecuter.executeCommand(DefaultDaemonCommandExecuter.java:52)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.handleCommand(DefaultIncomingConnectionHandler.java:154)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.receiveAndHandleCommand(DefaultIncomingConnectionHandler.java:128)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.run(DefaultIncomingConnectionHandler.java:116)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

We tell our users (libGDX) to use the Gradle Integration for Eclipse. This is currently a huge blocker for us and thousands of end users on Eclipse 4.4 and we'd appreciate any help with this.

NPE in external tool configurations

Steps to reproduce:

  1. Create gradle project (any type)
  2. build it
  3. select run as/gradle build
  4. select run as/external tool configuration
  5. left click on any item in tree on the left beside gradle build configurations. i.e. 'program', 'ant build', etc
  6. Most irritating thing is that after that eclipse response to any action with exception, so you must kill process

If you somehow delete all gradle external tool configurations this bug is no more reproduced. You can navigate and left click on any item in the tree
log file https://gist.github.com/OverDrone/45abdec4daca2489cbe5

Please support global task execution in multi-project builds

Hi,

we have the following situation:

  • root project (no Java plugin)
    • subproject 1 (with Java plugin)
    • subproject 2 (with Java plugin)

With gradle command line application I can run "gradle build" in the root project. The root project itself has no build task. Gradle automatically runs all build tasks of the subprojects.
In the Gradle Eclipse plugin I can only run tasks that are defined in the root project or explicitly select tasks of subprojects. But there is no such convenience to run all subproject tasks with the same name.

It would be great if the Eclipse integration would support this. :)

Best regards

Roland

Error importing projects - Build Model: InconsistenProjectHierarchyException

I have a project with sub-projects (https://github.com/i23098/Collections) that compiles correctly on the command-line. When I try to import the project in Eclipse I get an error and tells me to check the log... Checking it, it has:

!ENTRY org.springsource.ide.eclipse.gradle.core 4 0 2014-11-09 17:03:13.404
!MESSAGE Gradle project hierarchy is inconsistent for '/home/ralmeida/workspace-collections/Collections'
!STACK 0
java.lang.reflect.InvocationTargetException
at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:113)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Caused by: org.springsource.ide.eclipse.gradle.core.InconsistenProjectHierarchyException: Gradle project hierarchy is inconsistent for '/home/ralmeida/workspace-collections/Collections'
at org.springsource.ide.eclipse.gradle.core.util.ExceptionUtil.inconsistentProjectHierachy(ExceptionUtil.java:82)
at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.getCachedModel(GradleModelProvider.java:339)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:634)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:653)
at org.springsource.ide.eclipse.gradle.ui.wizards.GradleImportWizardPageOne$11.doit(GradleImportWizardPageOne.java:516)
at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:105)
... 1 more
Root exception:
org.springsource.ide.eclipse.gradle.core.InconsistenProjectHierarchyException: Gradle project hierarchy is inconsistent for '/home/ralmeida/workspace-collections/Collections'
at org.springsource.ide.eclipse.gradle.core.util.ExceptionUtil.inconsistentProjectHierachy(ExceptionUtil.java:82)
at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.getCachedModel(GradleModelProvider.java:339)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:634)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:653)
at org.springsource.ide.eclipse.gradle.ui.wizards.GradleImportWizardPageOne$11.doit(GradleImportWizardPageOne.java:516)
at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable.run(GradleRunnable.java:105)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)

Eclipse IDE for Java EE Developers 4.4.1.20140925-1820
Gradle IDE 3.6.2.201410090835-RELEASE (configured to use gradle wrapper at http://services.gradle.org/distributions/gradle-2.1-bin.zip)

special gradle editor

Hi,

it would be nice to have an editor for gradle buildfiles which has auto completion for some dsl snippets. In general gradle allows very dynamic dsls, because all the groovy and java things are allowed.
But minimal the static things like dependencies, tasks, dsl extensions? could be auto completed.

Best regards

Groovy Editor doesn't support Log injection

Hi,

groovy itself has a feature to dynamically create a field log which is a logger, when annotating the class with @log4j or @log or @SLF..... This is currently not supported by the groovy editor, because if I use this and want to access log this reference could not be resolved.

Best regards
Markus

Gradle Tasks View actions are not visible, was: [feature request] for Gradle Tasks View

Please consider to implements

  • hide/show enherited tasks, (there can be quite a lot of inherited from plugins tasks, for some periods build.gradle defined is all what needed). Having defined tasks to start with the same latter like "u" is work-around

  • show description of tasks

  • (the least needed) group by category and/or plugin, as gradle tasks output is

    Help tasks

    dependencies - Displays all dependencies declared in root project 'NashornSandbox'.
    dependencyInsight - Displays the insight into a specific dependency in root project 'NashornSandbox'.
    help - Displays a help message
    projects - Displays the sub-projects of root project 'NashornSandbox'.
    properties - Displays the properties of root project 'NashornSandbox'.
    tasks - Displays the tasks runnable from root project 'NashornSandbox'.

    IDE tasks

    cleanEclipse - Cleans all Eclipse files.
    cleanIdea - Cleans IDEA project files (IML, IPR)
    eclipse - Generates all Eclipse files.
    idea - Generates IDEA project files (IML, IPR, IWS)

Better support for grails applications

Is there any plans to add support for importing/building grails applications with gradle?

Right now, I can import the grails code (as gradle projects). But the source path, target directories, libraries and Gradle Dependencies are not set for the project.

gradle.build command "antTaskName.logging.level = LogLevel.INFO" has no effect inside eclipfse gradle integration but works on the command line running "gradle antTaskName"

Gradle IDE version: 3.6.2
eclipse.buildId=4.4.1.M20140925-0400

I did import my ant buold file with ant.importBuild 'build/build.xml'. Normal output of the ant taskt (stdout or special ant logging level output) like shown when running in ant is now suppressed when executing this imported ant task using the command line:

gradle antSetupStagingArea

:antSetupStagingArea

BUILD SUCCESSFUL

If antSetupStagingArea.logging.level = LogLevel.INFO is added to build.gradle the output on the command line is the same as in ant:

gradle antSetupStagingArea

:antSetupStagingArea
[ant:delete] Deleting directory ..
[ant:delete] Deleting directory ..
[ant:mkdir] Created dir: .. 
[ant:copy] Copying 2 files to ..
...

BUILD SUCCESSFUL

When running the same gradle task inside Eclipse Gradle IDE the command antSetupStagingArea.logging.level = LogLevel.INFO does not show effect and the output is just like without that command - no normal ant logging information is shown:

[sts] -----------------------------------------------------
[sts] Starting Gradle build for the following tasks: 
[sts]      antSetupStagingArea
[sts] -----------------------------------------------------
:antSetupStagingArea

BUILD SUCCESSFUL

Total time: 7.098 secs
[sts] -----------------------------------------------------
[sts] Build finished succesfully!
[sts] Time taken: 0 min, 7 sec
[sts] -----------------------------------------------------

Is it a bug?
How to show full logging information?

Eventually the Gradle Eclipse Integration should assist the user in setting up the required configuration.

Big problem for me: The eclipse plugin does not respect $variables in the dependencies and simply prints them 1:1 into the .classpath file for eclipse, how/where can this be fixed?

Example problem: <classpathentry kind="lib" path="D:/Project/Builds/$configuration/test.jar

where I have defined ext.configuration = 'Debug' in the parent project and the build works fine on the command line, but unfortunately the eclipse plugin does not seem to evaluate the variables.

I also suspect the "Refresh all" and "Refresh dependencies" have the same problem but in a different location in your source code, it would be cool if that place gets the $variable support as well.

updating of Gradle dependencies or initializing makes Eclipse unusable

This becomes big issue on slow/unstable Internet connection (I am currently in Beijing China).

Updating of Gradle dependencies or initializing makes Eclipse unusable,
as maven or gradle integration goes with Eclipse Job, next operation may become blocked (Eclipse says "User operation is blocked").

Initialization may be very long time or even fail.

Is recommendation to build first outside of Eclipse?
I hoped with gradle that would be fixed.

Be able to auto-build on save

Given:
In Eclipse Gradle project

when:
project --> Properties --> Builders --> New...

then:
I have the option to select 'Gradle Builder' (just like 'Ant Builder')

and:
The 'Edit launch configuration properties'-dialog has a 'Build Options'-tab allowing me to check
'[ ] During auto builds' (like when selecting 'Program' in 'New...'-dialog)

and:
This could also be used to replace the Java auto-builder in Eclipse by Gradle, and configuring Eclipse to read compiled classes from Gradle build dir.

Please support checkout of hierarchical multi-projects

Hi,

it would be great if users could check-out a folder from Subversion and all Gradle subprojects would be detected and added to Eclipse automatically. At the moment users need to import projects from subfolders manually.

Thanks in advance.

Best regards

Roland

Tasks Quick Launcher should remember last used project

I have a workspace with several Gradle projects in it, and I have a hotkey bound to launch the Tasks Quick Launcher.

However, every time I use the hotkey to open this window, it chooses the alphabetically first project as the one to execute the task under.

It would be awesome if the launcher remembered the last project tasks were run on so that I wouldn't have to leave the keyboard to repeatedly run builds and tests.

Thanks for considering this feature request!

Spring Boot web apps are deployed incorrectly to Tomcat

I've been investigating an issue reported against Spring Boot and think I've identified that the problem's caused by the Gradle plugin in STS 3.6.0.RELEASE.

Spring Boot supports the concept of an executable war file; a war that can either be run using java -jar using an embedded servlet container or by deploying it to a standalone servlet container. It's the latter case that fails when the deployment is performed in STS.

You can reproduce the problem by importing the convert jar to war getting started app and using WTP to deploy it to Tomcat. Once published this is the contents of WEB-INF/lib:

ls -l .metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/complete/WEB-INF/lib
total 26232
-rw-r--r--  1 awilkinson  staff     4467  6 Jun 10:07 aopalliance-1.0.jar
-rw-r--r--  1 awilkinson  staff    60282  6 Jun 10:09 classmate-1.0.0.jar
-rw-r--r--  1 awilkinson  staff    45024  6 Jun 10:09 hamcrest-core-1.3.jar
-rw-r--r--  1 awilkinson  staff   574278  6 Jun 10:09 hibernate-validator-5.0.3.Final.jar
-rw-r--r--  1 awilkinson  staff    35058  9 Jun 08:52 jackson-annotations-2.3.0.jar
-rw-r--r--  1 awilkinson  staff   199621  6 Jun 10:08 jackson-core-2.3.3.jar
-rw-r--r--  1 awilkinson  staff   915481  6 Jun 10:08 jackson-databind-2.3.3.jar
-rw-r--r--  1 awilkinson  staff   659343 10 Apr 11:48 javassist-3.16.1-GA.jar
-rw-r--r--  1 awilkinson  staff    60796  6 Jun 12:13 jboss-logging-3.1.1.GA.jar
-rw-r--r--  1 awilkinson  staff    16519  6 Jun 10:09 jcl-over-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff     4730  6 Jun 10:09 jul-to-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff   245039  6 Jun 10:08 junit-4.11.jar
-rw-r--r--  1 awilkinson  staff    24220  6 Jun 10:09 log4j-over-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff   270750  6 Jun 10:08 logback-classic-1.1.2.jar
-rw-r--r--  1 awilkinson  staff   427729  6 Jun 10:08 logback-core-1.1.2.jar
-rw-r--r--  1 awilkinson  staff   227997  6 Jun 10:09 ognl-3.0.6.jar
-rw-r--r--  1 awilkinson  staff    29257  6 Jun 10:09 slf4j-api-1.7.7.jar
-rw-r--r--  1 awilkinson  staff   273449  6 Jun 10:09 snakeyaml-1.13.jar
-rw-r--r--  1 awilkinson  staff   352813 23 Jul 16:18 spring-aop-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   670225 23 Jul 16:18 spring-beans-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   317609  8 Jul 13:56 spring-boot-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   341668  8 Jul 13:56 spring-boot-autoconfigure-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff     2151  8 Jul 13:56 spring-boot-starter-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff     2183  8 Jul 13:56 spring-boot-starter-logging-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff     2244  8 Jul 13:57 spring-boot-starter-thymeleaf-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff     2139  8 Jul 13:57 spring-boot-starter-tomcat-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff     2212  8 Jul 13:57 spring-boot-starter-web-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   977762 23 Jul 16:18 spring-context-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   976992 23 Jul 16:18 spring-core-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   205365 23 Jul 16:18 spring-expression-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   672855 23 Jul 16:18 spring-web-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   662596 23 Jul 16:18 spring-webmvc-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   789626  6 Jun 10:09 thymeleaf-2.1.3.RELEASE.jar
-rw-r--r--  1 awilkinson  staff    24141 25 Jun 10:16 thymeleaf-layout-dialect-1.2.5.jar
-rw-r--r--  1 awilkinson  staff   218637  6 Jun 10:09 thymeleaf-spring4-2.1.3.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  2648475  6 Jun 10:08 tomcat-embed-core-7.0.54.jar
-rw-r--r--  1 awilkinson  staff   174900  6 Jun 10:08 tomcat-embed-el-7.0.54.jar
-rw-r--r--  1 awilkinson  staff    38195  6 Jun 10:08 tomcat-embed-logging-juli-7.0.54.jar
-rw-r--r--  1 awilkinson  staff   132548  6 Jun 10:09 unbescape-1.0.jar
-rw-r--r--  1 awilkinson  staff    63777  6 Jun 10:07 validation-api-1.1.0.Final.jar

The three Tomcat jars (tomcat-embed-core-7.0.54.jar, tomcat-embed-el-7.0.54.jar, and tomcat-embed-logging-juli-7.0.54.jar) and spring-boot-starter-tomcat-1.1.4.RELEASE.jar should not be there. The dependency on spring-boot-starter-tomcat is declared in a custom configuration, providedRuntime, to ensure that it and its Tomcat dependencies are not packaged in WEB-INF/lib.

Looking at the project in the Package Explorer the dependencies are correct in Web App Libraries, i.e. the four problematic dependencies are not there. They are, however, present in Gradle Dependencies. In the Libraries section of the project's Java Build Path I can see that Gradle Dependencies is configured with "Publish/export dependency: /WEB-INF/lib". This appears to be the root of the problem as Gradle Dependencies contains the three Tomcat jars. If I remove this setting and republish the app, the contents of /WEB-INF/lib is then as desired:

ls -l .metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/complete/WEB-INF/lib
total 20056
-rw-r--r--  1 awilkinson  staff    4467  6 Jun 10:07 aopalliance-1.0.jar
-rw-r--r--  1 awilkinson  staff   60282  6 Jun 10:09 classmate-1.0.0.jar
-rw-r--r--  1 awilkinson  staff  574278  6 Jun 10:09 hibernate-validator-5.0.3.Final.jar
-rw-r--r--  1 awilkinson  staff   35058  9 Jun 08:52 jackson-annotations-2.3.0.jar
-rw-r--r--  1 awilkinson  staff  199621  6 Jun 10:08 jackson-core-2.3.3.jar
-rw-r--r--  1 awilkinson  staff  915481  6 Jun 10:08 jackson-databind-2.3.3.jar
-rw-r--r--  1 awilkinson  staff  659343 10 Apr 11:48 javassist-3.16.1-GA.jar
-rw-r--r--  1 awilkinson  staff   60796  6 Jun 12:13 jboss-logging-3.1.1.GA.jar
-rw-r--r--  1 awilkinson  staff   16519  6 Jun 10:09 jcl-over-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff    4730  6 Jun 10:09 jul-to-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff   24220  6 Jun 10:09 log4j-over-slf4j-1.7.7.jar
-rw-r--r--  1 awilkinson  staff  270750  6 Jun 10:08 logback-classic-1.1.2.jar
-rw-r--r--  1 awilkinson  staff  427729  6 Jun 10:08 logback-core-1.1.2.jar
-rw-r--r--  1 awilkinson  staff  227997  6 Jun 10:09 ognl-3.0.6.jar
-rw-r--r--  1 awilkinson  staff   29257  6 Jun 10:09 slf4j-api-1.7.7.jar
-rw-r--r--  1 awilkinson  staff  273449  6 Jun 10:09 snakeyaml-1.13.jar
-rw-r--r--  1 awilkinson  staff  352813 23 Jul 16:18 spring-aop-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  670225 23 Jul 16:18 spring-beans-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  317609  8 Jul 13:56 spring-boot-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  341668  8 Jul 13:56 spring-boot-autoconfigure-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff    2151  8 Jul 13:56 spring-boot-starter-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff    2183  8 Jul 13:56 spring-boot-starter-logging-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff    2244  8 Jul 13:57 spring-boot-starter-thymeleaf-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff    2212  8 Jul 13:57 spring-boot-starter-web-1.1.4.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  977762 23 Jul 16:18 spring-context-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  976992 23 Jul 16:18 spring-core-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  205365 23 Jul 16:18 spring-expression-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  672855 23 Jul 16:18 spring-web-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  662596 23 Jul 16:18 spring-webmvc-4.0.6.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  789626  6 Jun 10:09 thymeleaf-2.1.3.RELEASE.jar
-rw-r--r--  1 awilkinson  staff   24141 25 Jun 10:16 thymeleaf-layout-dialect-1.2.5.jar
-rw-r--r--  1 awilkinson  staff  218637  6 Jun 10:09 thymeleaf-spring4-2.1.3.RELEASE.jar
-rw-r--r--  1 awilkinson  staff  132548  6 Jun 10:09 unbescape-1.0.jar
-rw-r--r--  1 awilkinson  staff   63777  6 Jun 10:07 validation-api-1.1.0.Final.jar

Another, possibly related, problem is what's displayed in the Server's view when the app is added to Tomcat. It nests spring-web-4.0.6.RELEASE.jar and nothing else beneath the web app:

  • Tomcat v8.0 Server at localhost
    • complete
      • spring-web-4.0.6.RELEASE.jar

This only appears to be a cosmetic problem but it did lead to some confusion

Error when trying to install Eclipse integration gradle

I've got this error when trying to install Eclipse integration gradle:

Cannot complete the install because one or more required items could not be found.
Software being installed: Spring Dashboard (optional) 3.4.0.201310051510-RELEASE
(org.springsource.ide.eclipse.dashboard.feature.group 3.4.0.201310051510-RELEASE)
Missing requirement: Getting Started With Spring Integration 3.4.0.201310051510-RELEASE (org.springsource.ide.eclipse.commons.gettingstarted 3.4.0.201310051510-RELEASE) requires 'bundle org.codehaus.jackson.core 0.0.0' but it could not be found
Cannot satisfy dependency:
From: Spring Dashboard (optional) 3.4.0.201310051510-RELEASE(org.springsource.ide.eclipse.dashboard.feature.group 3.4.0.201310051510-RELEASE)
To: org.springsource.ide.eclipse.commons.gettingstarted [3.4.0.201310051510-RELEASE]

The system is Ubuntu 12.04 and Eclipse 4.2.
How can I fix this dependency?
Thank you!

Eclipse not using the project Gradle Wrapper if not in the default folder

By default, Gradle generate wrapper with this folder name "gradle" but if I have a project that decided to change the default folder name like to "gradle-wrapper", then even if Gradle Eclipse Preferences is set to "Use Gradle wrapper's default", the wrapper is not used, and of course we get no warning about it.

On the command line, running build doesn't get confused about the custom folder name and so Eclipse should be able to handle.

Cannot specify default gradle installation in linux.

The integration plugin does not allow ( see the check in
https://github.com/spring-projects/eclipse-integration-gradle/blob/aeb368250003d7a67cd64db0fc6cba69dfd6e5a4/org.springsource.ide.eclipse.gradle.core/src/org/springsource/ide/eclipse/gradle/core/validators/DistributionValidator.java#L56
)
to specify my system gradle installation to be used by it,
because:

  • I do not have gradle.bat at all,
  • my gradle.sh and gradle are in different folders:
    /etc/profile.d/gradle.sh
    /usr/share/java/gradle/bin/gradle

Can this be addressed in some way?

E.g. why not allow to specify gradle.sh/gradle.bat and gradle locations separately? Or maybe the check for gradle.bat can just be dropped?

Doesn't work with Tomcat Plugin

https://github.com/bmuschko/gradle-tomcat-plugin

The following Exception is thrown during the "Build Model" step when I try to import a Gradle 1.6 project.

FAILURE: Build failed with an exception.

* Where:
Build file '/home/rkapsi/server/build.gradle' line: 3

* What went wrong:
A problem occurred evaluating project ':server'.
> Could not find method create() for arguments [tomcatRun, class org.gradle.api.plugins.tomcat.TomcatRun] on task set.

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.GradleScriptException: A problem occurred evaluating project ':server'.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:127)
    at org.gradle.configuration.BuildScriptProcessor.evaluate(BuildScriptProcessor.java:38)
    at org.gradle.configuration.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:44)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:464)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:77)
    at org.gradle.configuration.DefaultBuildConfigurer$ConfigureProject.execute(DefaultBuildConfigurer.java:38)
    at org.gradle.configuration.DefaultBuildConfigurer$ConfigureProject.execute(DefaultBuildConfigurer.java:36)
    at org.gradle.api.internal.project.AbstractProject.configure(AbstractProject.java:440)
    at org.gradle.api.internal.project.AbstractProject.allprojects(AbstractProject.java:435)
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:32)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:142)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
    at org.gradle.initialization.DefaultGradleLauncher.getBuildAnalysis(DefaultGradleLauncher.java:92)
    at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:73)
    at org.gradle.tooling.internal.provider.DelegatingBuildModelAction.run(DelegatingBuildModelAction.java:44)
    at org.gradle.tooling.internal.provider.ConfiguringBuildAction.run(ConfiguringBuildAction.java:103)
    at org.gradle.launcher.exec.InProcessGradleLauncherActionExecuter.execute(InProcessGradleLauncherActionExecuter.java:39)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:45)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:42)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ReturnResult.execute(ReturnResult.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:70)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:68)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:68)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:59)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:45)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator.runCommand(DaemonStateCoordinator.java:186)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy.doBuild(StartBuildOrRespondWithBusy.java:49)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.HandleStop.execute(HandleStop.java:36)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.CatchAndForwardDaemonFailure.execute(CatchAndForwardDaemonFailure.java:32)
    at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
    at org.gradle.launcher.daemon.server.exec.DefaultDaemonCommandExecuter.executeCommand(DefaultDaemonCommandExecuter.java:48)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.handleCommand(DefaultIncomingConnectionHandler.java:155)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.receiveAndHandleCommand(DefaultIncomingConnectionHandler.java:128)
    at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.run(DefaultIncomingConnectionHandler.java:116)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
Caused by: org.gradle.api.internal.MissingMethodException: Could not find method create() for arguments [tomcatRun, class org.gradle.api.plugins.tomcat.TomcatRun] on task set.
    at org.gradle.api.internal.AbstractDynamicObject.methodMissingException(AbstractDynamicObject.java:68)
    at org.gradle.api.internal.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:56)
    at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:172)
    at org.gradle.api.internal.tasks.DefaultTaskContainer_Decorated.invokeMethod(Unknown Source)
    at org.gradle.api.plugins.tomcat.TomcatPlugin.configureTomcatRun(TomcatPlugin.groovy:89)
    at org.gradle.api.plugins.tomcat.TomcatPlugin.this$2$configureTomcatRun(TomcatPlugin.groovy)
    at org.gradle.api.plugins.tomcat.TomcatPlugin$this$2$configureTomcatRun.callCurrent(Unknown Source)
    at org.gradle.api.plugins.tomcat.TomcatPlugin.apply(TomcatPlugin.groovy:55)
    at org.gradle.api.plugins.tomcat.TomcatPlugin.apply(TomcatPlugin.groovy)
    at org.gradle.api.internal.plugins.DefaultProjectsPluginContainer.providePlugin(DefaultProjectsPluginContainer.java:107)
    at org.gradle.api.internal.plugins.DefaultProjectsPluginContainer.addPluginInternal(DefaultProjectsPluginContainer.java:71)
    at org.gradle.api.internal.plugins.DefaultProjectsPluginContainer.apply(DefaultProjectsPluginContainer.java:37)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:101)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$200(DefaultObjectConfigurationAction.java:32)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$3.run(DefaultObjectConfigurationAction.java:72)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:114)
    at org.gradle.api.internal.project.AbstractProject.apply(AbstractProject.java:846)
    at org.gradle.api.Project$apply.call(Unknown Source)
    at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.groovy:34)
    at org.gradle.api.Script$apply.callCurrent(Unknown Source)
    at build_ubia3vf1od046um9gg7knhm0q.run(/home/rkapsi/server/build.gradle:3)
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52)
    ... 53 more

Offline installer/update-site for eclipse-integration-gradle

Does eclipse-integration-gradle provide a offline installer ? I having been looking for ways to install it on eclipse without internet connection/internet is blocked by proxy, but have not been able to. I am not sure if the offline installer is provided. If not, can I create one using the open source code ?

I think it will be a great idea to include one.

IncompatibleClassChangeError when creating gradle project in eclipse

I got below error when creating gradle project in eclipse.
image

eclipse version is 4.4.0
Gradle IDE version is 3.6.2.201410090835-RELEASE

gradle version and jdk version
image

gradle config in eclipse
image
image

Details log:
!ENTRY org.springsource.ide.eclipse.gradle.core 4 0 2014-11-27 11:03:55.233
!MESSAGE class org.gradle.tooling.internal.provider.ClientSidePayloadClassLoaderFactory$MixInClassLoader$AnnotationDetector has interface org.objectweb.asm.ClassVisitor as super class
!STACK 0
org.gradle.tooling.GradleConnectionException: Could not fetch model of type 'HierarchicalEclipseProject' using Gradle installation 'D:\development\gradle-2.2.1'.
at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:57)
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:48)
at org.springsource.ide.eclipse.gradle.core.GradleModelProvider.buildModel(GradleModelProvider.java:414)
at org.springsource.ide.eclipse.gradle.core.GradleModelProvider$GroupedModelProvider.ensureModels(GradleModelProvider.java:295)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getModelProvider(GradleProject.java:568)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getGradleModel(GradleProject.java:628)
at org.springsource.ide.eclipse.gradle.core.GradleProject.getSkeletalGradleModel(GradleProject.java:653)
at org.springsource.ide.eclipse.gradle.core.wizards.GradleImportOperation.allProjects(GradleImportOperation.java:713)
at org.springsource.ide.eclipse.gradle.core.wizards.GradleImportOperation.importAll(GradleImportOperation.java:718)
at org.springsource.ide.eclipse.gradle.core.wizards.NewGradleProjectOperation.createProjectContents(NewGradleProjectOperation.java:104)
at org.springsource.ide.eclipse.gradle.core.wizards.NewGradleProjectOperation.perform(NewGradleProjectOperation.java:82)
at org.springsource.ide.eclipse.gradle.ui.wizards.NewGradleProjectWizard$1.doit(NewGradleProjectWizard.java:47)
at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable$1.run(GradleRunnable.java:53)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.IncompatibleClassChangeError: class org.gradle.tooling.internal.provider.ClientSidePayloadClassLoaderFactory$MixInClassLoader$AnnotationDetector has interface org.objectweb.asm.ClassVisitor as super class
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.gradle.tooling.internal.provider.ClientSidePayloadClassLoaderFactory$MixInClassLoader.transform(ClientSidePayloadClassLoaderFactory.java:59)
at org.gradle.internal.classloader.TransformingClassLoader.findClass(TransformingClassLoader.java:46)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:249)
at org.gradle.tooling.internal.provider.DefaultPayloadClassLoaderRegistry$2.resolveClass(DefaultPayloadClassLoaderRegistry.java:77)
at org.gradle.tooling.internal.provider.ClientSidePayloadClassLoaderRegistry$2.resolveClass(ClientSidePayloadClassLoaderRegistry.java:88)
at org.gradle.tooling.internal.provider.PayloadSerializer$2.readClass(PayloadSerializer.java:124)
at org.gradle.tooling.internal.provider.PayloadSerializer$2.readClassDescriptor(PayloadSerializer.java:104)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1578)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1494)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1748)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
at org.gradle.tooling.internal.provider.PayloadSerializer.deserialize(PayloadSerializer.java:137)
at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:111)
at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:94)
at org.gradle.tooling.internal.provider.DefaultConnection.getModel(DefaultConnection.java:152)
at org.gradle.tooling.internal.consumer.connection.CancellableModelBuilderBackedModelProducer.produceModel(CancellableModelBuilderBackedModelProducer.java:50)
at org.gradle.tooling.internal.consumer.connection.GradleBuildAdapterProducer.produceModel(GradleBuildAdapterProducer.java:42)
at org.gradle.tooling.internal.consumer.connection.BuildInvocationsAdapterProducer.produceModel(BuildInvocationsAdapterProducer.java:44)
at org.gradle.tooling.internal.consumer.connection.ModelBuilderBackedConsumerConnection.run(ModelBuilderBackedConsumerConnection.java:62)
at org.gradle.tooling.internal.consumer.DefaultModelBuilder$1.run(DefaultModelBuilder.java:59)
at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.run(LazyConsumerActionExecutor.java:88)
at org.gradle.tooling.internal.consumer.connection.ProgressLoggingConsumerActionExecutor.run(ProgressLoggingConsumerActionExecutor.java:58)
at org.gradle.tooling.internal.consumer.connection.LoggingInitializerConsumerActionExecutor.run(LoggingInitializerConsumerActionExecutor.java:44)
at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:55)
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)

'remap jar to gradle' causes quadratic dependency resolution

Using version 3.6.3.201410291755-CI-B310 from the nightly update site.

I have a multi module project set up with one main project and three sub projects depending upon each other. One of those provides Java classes, one is a war project using the former, the last one is an ear project' combining both.

When config option Remap Jars to Gradle Projects is activated, updating dependencies for all/multiple modules of a multi module project (by marking them all in the project explorer and hitting Refresh Dependencies from the Gradle submenu) takes more time and resources than it should.

I modified the individual build.gradle files to create a time stamp file whenever those build.gradle files are executed/evaluated. Doing this with 4 projects, I can see 5 files being created per project:

  • one of the original dependency evaluation from job Refresh project models
  • one for each single job Update Gradle Classpath for projectN

Thus, the quadratic runtime complexity.

While this isn't really a big deal with small multi module setups, it can become very time-intensive with every project that is added to that setup.

Disabling the aforementioned jar mapping option "fixes" this: each project is only evaluated once (and, thus, only one the initial time stamp file is created), but, alas, jar remapping doesn't work.

This shouldn't happen. The individual build scripts have already been evaluated once, the artifacts they produce should be known. All the information needed for updating the individual Gradle class path containers should be readily available for reuse.

I cannot comment on the remapping functionality regarding Maven projects as I don't run a setup like that, but it might be worth looking into it as well.

Gradle Wrapper is unusable from Eclipse

I had to change the Eclipse settings for Gradle IDE to not use the Gradle wrapper anymore.
So hole system was unusable with the wrapper.
As an Example converting an existing project into a Gradle Project using Eclipse starts a task that never finishes.
This also happens with other use cases.

Gradle tasks timeout after build.gradle modified while jetty is running

I am using jetty plugin to test my work. I have noticed that if I modify build.gradle while jetty is started (by gradle), than all other task executions timeout with this exeption:

Timeout waiting to lock buildscript class cache for build file '{project}/build.gradle' ({gradle_home}/caches/1.11/scripts/build_307eri5rn2tng6h3pvh4svs119/ProjectScript/buildscript). It is currently in use by another Gradle instance.
Owner PID: unknown
Our PID: 7053
Owner Operation: unknown
Our operation: Initialize cache
Lock file: {gradle_home}/caches/1.11/scripts/build_307eri5rn2tng6h3pvh4svs119/ProjectScript/buildscript/cache.properties.lock
Could not execute build using Gradle installation '{1.11-gradle-install-location}/gradle'.

The only way to get out of this situation is to manually kill gradle daemons.

Dependencies in random order

Using the org.springsource.ide.eclipse.gradle.classpathcontainer to add gradle dependencies to an eclipse classpath generates a random order of these dependencies.
The classpath container should respect the dependency order given in the gradle build file.

Running any gradle task with Eclipse custom builder triggers Model build on main project

I have a custom builder that runs in Eclipse for every manual/autobuild and clean. Running any gradle task, triggers this custom builder, which in turn triggers a 'Building Gradle Model' of my main gradle project.

The 'Building Gradle Model' execution wipes out the console output of the task Gradle task that I was interested in.

For now I am working around this by redirecting output to a file in External Tool Configurations->Common.

SourceSetOuptut output directories

Sorry I don't really want to create ANOTHER account on another forum for another bug tracker.

It seems that this integration plugin does not handle SourceSetOutput in the same manner as the Gradle Eclipse Plugin.

SourceSetOutput Referennce

Specifically, outputs directories added to the SourceSetOutput should be added to the compile classpath.

Example from reference:

 sourceSets {
   main {
     //let's register an output folder on the main SourceSet:
     output.dir(generatedResources, builtBy: 'generateMyResources')
     //it is now a part of the 'main' classpath and will be a part of the jar
   }
 }

In the example above, the folder is never added to Gradle Dependencies.

This seems to work as expected in the latest Eclipse Plugin, but this needs to be run on CLI.

Thanks

Edit: just to help narrow things down: this seems related to "Dependency Management". Turning this off makes it use the Eclipse plugin (if applied) and works nicely.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.