Closed RobertWalterU3d closed 2 years ago
please check the gradle log / console on refresh gradle project
sorry, but where I can I find the gradle log/console? ALl I see are these two views in the IDE (which is where I do "RIght click->Gradle->Refresh Gradle Project"):
in the console view on the arrow i see gradle operations when calling gradle refresh on parent/root
I don't see that option, but it looks like the [Gradle Operations] are already "open"
When I perform the refresh, the console shows nothing.
there is no gradle -> refresh gradle project. ?!?
The menu option is there, but the console does not show anything when I perform the action.
is there anything in error log? have no idea whatn is broken with your buildship install. how do your .classpath files look like
This is how the classpath file looks like for the language project:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="bin/main" path="src">
<attributes>
<attribute name="gradle_scope" value="main"/>
<attribute name="gradle_used_by_scope" value="main,test"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="bin/main" path="src-gen">
<attributes>
<attribute name="gradle_scope" value="main"/>
<attribute name="gradle_used_by_scope" value="main,test"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="bin/main" path="xtend-gen">
<attributes>
<attribute name="gradle_scope" value="main"/>
<attribute name="gradle_used_by_scope" value="main,test"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/>
<classpathentry kind="output" path="bin/default"/>
</classpath>
Again, nothing that would normally be in the "Project and External Dependencies" can be resolved, so my Problems view looks like below (but I guess you mean something else with "error log", right?)
i mean .log files in workspace/.metadata
yes and normally gradle logs that in the operations log if it cannot resolve stuff. maybe its also a java version
which ones do you use?
When I run gradle from console to refresh dependencies, it works (I use the build task as target, maybe that is not correct?)
yes but buildship should do the same.
so, this is what I see at the end of the log file:
so it looks like there is something wrong with your setup.
Maybe unsurprisingly, still wanted to share, this folder is empty:
.\.metadata\.plugins\org.eclipse.buildship.core\project-preferences\
I understand that buildship should store something there.
I will check the versions of gradle, buildship, etc, next, as you suggested.
are you sure the eclipse workspace and the gradle root or a project root are disjoint?
eclipse version is: 2020-06 buildship version (acc. to eclipse->Help->About): 3.1.4.v20200326-1743 gradle (acc to command ./gradlew -v): 5.6.4
Are you sure the eclipse workspace and the gradle root or a project root are disjoint?
How can I ensure that? Again, building from command line and starting VS code with the plugin works just fine...
The interesting thing is that I used the very same eclipse, gradle, buildship version in 2020 to develop this language extension... so I wonder how it could have worked back then but not today...
what is the dir of your eclipse workspace
I use the exact same folder structure as this example repository does, so I have a a root folder where my language/ide/websocket/vscode-extension projects are all located in separate folder.
The settings.gradle file includes these five projects.
In the meantime jcenter went down. Maybe, this is the reason? That's where the dependencies are resolved from...
again which is the workspace dir you use in eclipse?
... use mavenCentral() instead.
It is the "root":
D:\dev\repository\root\
Inside this root folder, there are the five projects, and gradlew.bat
, .metadata
, .settings
and such.
then this is something that buildship dislikes. can you try different dir.
Sure. So, should I create a completely different directory as the workspace and import my five projects? As copies, or just references?
just new workspace and use gradle import on the root
... use mavenCentral() instead
Sorry, I'm not used to gradle, maven, or eclipse, I just try to used this as a template, so I don't know how I would go about using maven central instead. It also looks like as if all the dependencies are cached in ~\.gradle\caches\modules-2\
... so I think it is not an issue of resolving the dependencies from server...?
just new workspace and use gradle import on the root
I'm sorry, I don't follow. When I create a new workspace, it is empty, right? So, I'm not sure
I'm reall ynot familiar with any of these technologies, sorry.
create new workspace (empty) import -> gradle -> existing gradle project choose the root
Wow, that did indeed fix it!
Thank you very much, I would have never guessed that.
of course it would be better if buildship showed an error dialog
Do you want me to add a feature request for that at buildship repo linking this issue?
at least you can hint them on the issue. https://github.com/eclipse/buildship
I used this template in 2020 to build my own VS Code extension.
Everything worked back then, but when I open the workspace with the very same eclipse version again today (2020-06), the library "Project and External Dependencies" does not show and all the dependencies to Xtext and related libs are broken.
Building from gradle still works, and I assume the issue is related to how buildship sets up the classpath, but I tried to refresh the gradle project and get this "Library entry" back so I can use the eclipse IDE to browse my projects again, but I cannot make it work. Any ideas how I can fix that?
UPDATE
In case you experience the same issue, try this solution of setting up a new workspace and importing the root gradle project, it worked for me: https://github.com/itemis/xtext-languageserver-example/issues/79#issuecomment-1008874954