How to reconfigure Eclipse egit after move from Linux to Windows? - eclipse

Problem:
I moved an Eclipse project from a Linux machine to a Windows 8.1 machine but cannot get the Git repositories to load on the new Windows Box. I use eGit within Eclipse (and am NOT a sophisticated user of GIT).
I moved the projects from the Linux box to the Windows box by manually copying the entire project directory and all sub-directories. My Git/eGit files seem to be stored, for example, in
D:\TheUser\Programming\eclipse\project1\project1gui\.git.
When I launch Eclipse on the Windows box, I get an eGit error and none of my repositories open. The error is:
java.nio.file.InvalidPathException: Illegal char <:> at index 66:
\home\TheUser\Programming\eclipse\project1\project1gui.git:\home\TheUser\Programming\eclipse\project2.git:\objects
NOTE: the paths in the error seem to be the old Ubuntu/Linux paths.
I understand the error, there is a Windows invalid character in the path, but I simply cannot find a config file or other means to reconfigure eGit manually (I don't want to lose my repositories).
Specs:
Eclipse Kelper SR2
JDK 1.7
Windows 8.1 x64 Pro
(Moved from Ubuntu x64)

In case anyone else stumbles on this from Google (Like I did), the problem is that the path separator in your .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs is wrong. (That's from the root of your workspace)
So, if you open that file with the editor of your choice and replace all ":" characters in GitRepositoriesView.GitDirectories and GitRepositoriesView.GitDirectories.relative with ";" and restart Eclipse, things should start working again.

I had same issue on Eclipe Version: 2019-03 (4.11.0).
The root cause looks to be that default ${user.home}/.ssh is appending the new location of your keys with an extra \ at the end. This may be a Eclipse bug in 2019
The solution I used was to go to Preferences -> Network Connections -> SSH2 and overwrite
the SSH2 home with new folder where I put the correct ssh key to connect to git and now is working fine.

You need to go into the .git/config file in your repo, and modify the remote to point to the new url.

Related

How do I resolve SVN error "E200030: There are unfinished transactions detected in '<CHECKOUT_DIRECTORY>'"?

I have installed a virtual box with Windows 10, Eclipse Mars, Subversive Plugin, SVNKit 1.8.11 and tried to set up some repositories in a configuration I already did successfully in several other environments. The SVN server is a Debian 7 system with Subversion 1.6.17. The following problem occurs only since I set up the above mentioned system:
Check-out: e. g. SVN-Repositories -> expand Repository X -> right-click on trunk -> check-out -> Error occurs: "Checkout operation for 'svn://host/X/trunk' failed. svn: E200030: There are unfinished transactions detected in 'C:\PathToWorkspace\X'"
After this the Subversive plugin stops working, apparently.
Export: same result as check-out
Further investigation got me to a specific file in the repository, which fails loading with "invalid handle" error. It is not in a "strange" path (not too long, no spaces or special characters) and the file itself contains no suspicious characters, just Unix line breaks. Permissions and space on disk are OK. Other respositories with the same properties DO work as expected.
I found posts with similar problems, but none of them applied to mine, apparently. They told me to wipe my workspace directory (which I did), but I just lost all of my settings without solving the problem. After this, I investigated the program directory of Eclipse, whicht didn't bring any more success.
Additionally, the ".svn\wc.db" file is still locked after the failure. Deleting the repository is therefore not possible until closing Eclipse. The directory is not listed in any project list/tree in eclipse like the package explorer, but the directory exists on the disk.
The same repository X still works in every of the other configurations I have. How can I reset these "transactions" in order to repair this? I really would like to avoid completely reinstalling Eclipse or even Windows.
EDIT
I istalled TortoiseSVN 1.16.16.21511 (x64), which perfectly fits to the SVN service version. Same problem.
First, try:
Right-click the project -> Team -> Cleanup.
If that didn't help:
Restart Eclipse -> Team -> Cleanup
I got the same error in my case but in different situation, I was working on the shared folder using both Eclipse and Tortoise SVN, and Eclipse was not able to clean up or do any commit, so I tried to close Eclipse and do clean up from outside using tortoise. it worked.
I finally got it: creating the files "con.cpp" and "con.h" from the project had apparently been rejected by Windows. As far as I remember, "con" is kind of a reserved command or sub command in Windows. Renaming it to something else right in the repository solved the problem.
When you are performing any team operations in eclipse ( such as
commit, update, replace ) and if you cancel the operation in between.
The files involved in the operation are locked.
This is one of the possibilities for the error to appear.
To resolve this in Eclipse.
Right Click on the project -> Team -> Cleanup
If the above process doesn't work
Restart eclipse -> Right Click on the project -> Team -> Cleanup
If this didn't resolve the issue.
Remove these locks explicitly.
Ubuntu
Install svn if you haven't installed.
sudo apt-get install subversion
Then clean the project folder.
svn cleanup /path/to/working-copy
Windows
Get Tortise SVN from this link.
After installing, Right-click on the project folder which is linked to SVN.
There will be an option do SVN cleanup. Click on it. It takes some time to clean up.
Then you are good to go.
This solution worked for me.
i had an error also on the command 'cleanup' on a project, and restarting the eclipse didn't solve.
i had to disconnect the project from svn and re-connect later
I had the same issue, unfortunately, the issue with the device storage running out of memory.
Free up the memory and able to proceed further from the mentioned issue
I have Eclipse Luna with Subversive, and I had two problems to syncronize with the Repository in a Server, E170001 and E20030 (sometines one and sometimes both). My solution was:
1.- In Eclipse: go to to "Window" - "Preferences".
2.- Go to "General" - "Network Connections".
Down, at Proxy Bypass, add de IP of the server where you has the Repository of SVN.

Eclipse Git Configuration System Settings is disabled

I'm working with Eclipse Mars, on Windows 7 64 bits and I recently discovered that when I clone a repository using eclipse built-in git clone feature, CRLF are not added to the files, and they are cloned with only LF at the end.
I checked Eclipse config for Git (Team > Git > Configuration) and I found that System Settings is empty and all buttons disabled and it says "Unknown" in the Location field.
I have Git for Windows 2.5.0 64 bits installed. Apparently now the system gitconfig file should be under C:\Program Files\Git\mingw64\etc but by default there is no file there.
I discovered that if I manually populate it from cmd (git config --system core.autocrlf true) it will be created, but still can't select it from Eclipse.
You need to tell EGit where the default system configuration is for it to be able to pick up the values. There's a Browse button which should allow you to change it according to the help pages:
https://wiki.eclipse.org/EGit/User_Guide#Pointing_out_the_System_wide_configuration
You can also set this property in the User Settings which Eclipse will respect. Global is 'for all users of this machine' and User Settings is typically stored in your home directory, i.e. 'for just this user'.
You'd have to find where the file that's being created by git config --global on your setup is. It's likely that git isn't on the path, and that's why Eclipse can't auto-guess where it should be.
By the way, unless you really, really need to have CRLF on the files you should prefer to keep them as how they are stored remotely - it will be faster for EGit and Git to perform deltas if it doesn't have to do line-ending conversion on most operations.
I had a similar problem so let me add this for clarification: in Eclipse Preferences > Team > Git > Configuration the System Settings Tab was empty and "Location:" said "Unknown". The EGit User Guide (https://wiki.eclipse.org/EGit/User_Guide#Pointing_out_the_System_wide_configuration) tells that "If you selected one of the options to use Git from the Command Line Prompt when you installed Git for Windows, then the location of the system wide settings is filled in with a path and everything is fine. If not, use the Browse button to locate where Git is installed, e.g. C:\Program Files(x86)\Git." Indeed I did not select the option to use "Git from the Command line ..." when I installed Git. But instead of a "Browse" button my Eclipse 2020-09 has an "Open" button and that one was GREYED OUT, so I was unable to tell EGit in the above mentioned "System Settings" Tab where the local Git installation could be found. Furthermore I did not know which path precisely had to be added to the systems PATH variable.
I then reinstalled Git with the option to use "Git from the Command line ..." and found out that "C:\Program Files\Git\cmd" was added to the System PATH. After a restart of Eclipse the "System Settings" Tab had the "Location" configured as: "C:\Program Files\Git\etc\gitconfig" and all the missing keys and corresponding values were set.

Why does Eclipse Mars not read the project location correctly?

I have a project that has lived in my workspace for some time. It is a git project and I use Egit and cygwin git to manage it. Not sure if that's relevant.
I'm not sure what's messing up eclipse but, in the last day, I have noticed that when I start eclipse, my project is marked as closed. When I looked at the project properties, I saw that eclipse is using the wrong path. Instead of:
C:\cygwin64\home\rcoe\git\projectname
it is now pointing at:
C:\cygwin64\home\rcoe\.gitconfig\projectname
However, my .metadata .location file (which is binary) shows that the location is correct. This file is buried in my workspace, which is located in my Windows home directory.
I tried deleting my project and re-importing it, both as a git project and as a general project, and it opens no problem. I can even close and open eclipse right away and the project stays open. However, give it a few minutes and re-open eclipse and the project now thinks it lives under a non-existent .gitconfig directory. I even tried creating a new workspace and importing my project. Same behaviour.
So, I'm not sure whether this is an Eclipse Mars bug, or Egit, or something else. Has anyone seen this kind of behaviour before?
Edit:
I hit new snags trying to share my project using Eclipse 4.4. The Luna git plugin threw errors about the plugin. So I went back to Mars (4.5) and created a new workspace. The .location file looks like this
#±‹#¼ %–磓¾ 2URI//file:/C:/cygwin64/home/rcoe/git/logprocessing ÀXûó#¼ QóŒ{»wÆ
but when I open Eclipse, the properties of the project looks like:
C:\cygwin64\home\rcoe\.gitconfig\logprocessing
I have no idea what Eclipse is using for its location, if not the .location file.
I found what looks to be a solution. I moved the .gitconfig file from my cygwin home, which is where Eclipse was configured to look for it. On starting Eclipse, I was able to import my project without error. And even though Eclipse's previous error messages implied it wanted to write to the project directory beneath a .gitconfig directory (cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=473782), Eclipse did nothing of the sort.
I am now able to restart Eclipse, run my unit tests, etc., without error. I am also able to interact with my Git repo using Eclipse, even though Eclipse no longer points at my .gitconfig and so does not know my user.name or user.email properties.
On Windows, it would be best to use git for Windows instead of git in Cygwin. It comes with Git 2.4.6 released 5 days ago.
That way, Eclipse doesn't have to manage two different filesystem, and two different HOME (C:\cygwin64\home\rcoe vs. %USERPROFILE%)

How to clear the cache in NetBeans

This question's answers are a community effort. Edit existing answers to improve this post. It is not currently accepting new answers or interactions.
I created a project in NetBeans, and I would like to clear the NetBeans cache.
I'm running NetBeans 7.0.1 on a Windows 7 machine.
How do I do this?
Close NetBeans before deleting the cache.
NetBeans 7.2+, Windows 7
Cache is located in C:\Users\<username>\AppData\Local\NetBeans\Cache\.
Clear the cache using the %USERPROFILE% Windows variable:
del /s /q %USERPROFILE%\AppData\Local\NetBeans\Cache\
If it is set, you can also use the environment variable %LOCALAPPDATA%:
del /s /q %LOCALAPPDATA%\NetBeans\Cache\
NetBeans 7.2+, Linux
Cache is at: ~/.cache/netbeans/${netbeans_version}/index/
Mac OS X
Cache is at: ~/Library/Caches/NetBeans/${netbeans_version}/
See also http://wiki.netbeans.org/FaqWhatIsUserdir.
Help Menu
On Windows, selecting the Help » About menu will display a dialog that contains the following text:
Product Version: NetBeans IDE 8.0.2 (Build 201411181905)
Java: 1.7.0_80; Java HotSpot(TM) 64-Bit Server VM 24.80-b11
Runtime: Java(TM) SE Runtime Environment 1.7.0_80-b15
System: Windows 7 version 6.1 running on amd64; Cp1252; en_CA (nb)
User directory: C:\Users\Username\AppData\Roaming\NetBeans\8.0.2
Cache directory: C:\Users\Username\AppData\Local\NetBeans\Cache\8.0.2
Regardless of operating system, the About dialog will contain the correct path to the cache directory.
The path of the cache directory is listed in the About window (menu Help/About). Close NetBeans, then delete (or rename) the directory. NetBeans will rebuild its cache when it starts up.
Before 7.2, the cache is at C:\Users\username\.netbeans\7.0\var\cache. Deleting this directory should clear the cache for you.
On a Mac with NetBeans 8.1,
NetBeans → About
Find User Directory path in the About screen
rm -fr 8.1 In your case the version could be different; remove the right version folder.
Reopen NetBeans
I'll just add that I have tried to resolve reference problems caused by a missing library in the cache, and deleting the cache was not enough to solve the problem.
I closed NetBeans (7.2.1), deleted the cache, then reopened NetBeans, and it regenerated the cache, but the library was still missing (checked by looking in .../Cache/7.2.1/index/archives.properties).
To resolve the problem I had to close my open projects before closing NetBeans and deleting the cache.
For Netbeans 7.4 and above in Linux, the cache is $HOME/.cache/netbeans/7.4.
In Window 7 the cache is located at C:/Users/USERNAME/AppData/Local/NetBeans/Cache
The NetBeans cachedir is a directory consisting of files that may become large, may change frequently, and can be deleted and recreated at any time. For example, the results of the Java classpath scan reside in the cachedir.
NetBeans 7.1 and older
By default the userdir is inside a (hidden) directory called .netbeans stored in the user's home directory. The home directory is ${HOME} on Unix-like systems, and %USERPROFILE% (usually set to C:\Documents and Settings\) on Windows. The cachedir can be found in var/cache subfolder of the userdir.
As the name suggests, the userdir is unique per user. For each version of NetBeans installed, the userdir will be a unique subdirectory such as .netbeans/.
To find out your exact userdir location, go to the IDE's main menu, and choose Help > About. (Mac: NetBeans > About NetBeans).
NetBeans 7.1 allows to separate the cache directory using a switch --cachedir to a desired location.
Examples
A Windows user jdoe running NetBeans 5.0 is likely to find his userdir under
C:\Documents and Settings\jdoe.netbeans\5.0\
A Windows Vista user jdoe running NetBeans 5.0 is likely to find his userdir under
C:\Users\jdoe.netbeans\5.0\
A Mac OS X user jdoe running NetBeans 5.0 is likely to find his userdir under
/Users/jdoe/.netbeans/5.0/ (To open this folder in the Finder, choose Go > Go to Folder from the Finder menu, type /Users/jdoe/.netbeans/5.0/ into the box, and click Go.)
A Linux user jdoe running NetBeans 5.0 is likely to find his userdir under
/home/jdoe/.netbeans/5.0/
For More Info
See this documentation at the NetBeans site: NetBeans 7.2 and newer
For NetBeans 8+ on Windows 10 there's a definitive bug with duplicate classes error which is being solved by cleaning the cache at
C:\Users\<user>\AppData\Local\NetBeans\Cache.
Just install cache eraser plugin, it is compatible with nb6.9, 7.0,7.1,7.2 and 7.3:
To configure the plugin you have to provide the cache dir which is in netbean's about screen.
Then with Tools->erase cache, you clear the netbeans cache.
That is all, good luck.
http://plugins.netbeans.org/plugin/40014/cache-eraser
The cache is C:\Users\userName\AppData\Local\NetBeans\Cache\, and then the version name of the folder will specify the correct cache.
You can also do this: Close the IDE. Instead, of deleting files and risking everything, rename this cache folder. Now start the IDE. Once it starts, a new cache folder will be created since the folder is not found. Now you can delete the renamed folder safely.
tl;dr
You might not need to whack your entire NetBeans cache.
My problem manifested as running a clean build didn't delete the previous build folder or testuserdir folder, while I was using NetBeans 8.0.2.
The first time I had this problem, Ray Slater's answer above helped me immensely. I had two Project Groups, and had to close each project in both groups, close NetBeans, clear the cache, then add my projects back to my groups before it would work again.
Later, this problem cropped up again with NetBeans 8.1. I closed NetBeans, and ran ant build clean at the command line, and it worked. When I reopened NetBeans, the problem was resolved. It occurs to me that NetBeans was keeping something open and just needed to be closed in order to delete the folders.
Update
I finally figured out what was going on. Somehow, my NetBeans "Module Suite Project" (yellow/orange puzzle pieces icon) had been closed and the "Module Project" (purple puzzle piece icon) having the same exact name as the "Module Suite Project" was open. Building clean cleaned that particular Project correctly, but did not clean the entire Suite.
Now that I have the "Module Suite Project" opened correctly again, things work as expected. This explains why ant build clean worked, since it was done on the command line at the right level to clean the whole Suite.
I suspect I didn't strictly need to clean out my NetBeans cache at all though perhaps doing so actually fixed the issue of why it was only showing the "Module Project" instead of the "Module Suite Project", thereby doing the right thing when I clicked build clean... If I had simply realized that the Suite was no longer open and only the Project was, I could have fixed it in three seconds.
I have tried this
UserName=radhason
C:\Users\radhason\AppData\Local\NetBeans\Cache
Press Ok button , then cache folder will be shown and delete this cache folder of netbeans.

Can't add server to a moved workspace

I have this workspace downloaded off the web and I try running it on a tomcat server from a fresh installation of Eclipse Ganymede. This particular project came with its own workspace.
When I select Tomcat v6.0 I get a message
Cannot create a server using the selected type
Older tomcat versions are available, though.
I guess I have to recreate some configuration setting. The question is which one? This seems to be some odd error as creating a new dynamic web project lets me configure tomcat for both of them
I had a similar problem, but my solution is a little simpler. The problem was causesd by renaming the original folder that was referenced by the server definition.
Go to Window/Preferences/Server/Runtime Environments, remove the broken reference. Then, click 'Add' to create a new reference, select the appropriate tomcat version, click next and you'll see the incorrect path reference. Fix it. Move on.
I had this same problem on Ubuntu 8.10 with Ganymede and Tomcat6. This appears to be some sort of bug with Eclipse. If you try and create a server, and it barfs, you can't create another tomcat6 server. To correct this problem, do the following:
close eclipse
go to the {workspace-directory}/.metadata/.plugins/org.eclipse.core.runtime/.settings directory and remove a file called org.eclipse.wst.server.core.prefs.
start eclipse
add your tomcat6 server in the server tab
kotfu
#id thanks for the solution but something is also hidden in org.eclipse.jst.server.tomcat.core.prefs
So in order to solve the problem
close eclipse
go to {workspace-directory}/.metadata/.plugins/org.eclipse.core.runtime/.settings
remove the files org.eclipse.wst.server.core.prefs and org.eclipse.jst.server.tomcat.core.prefs
Tomcat 5.5
I order to be able to use the tomcat5.5 server you need to have a writeable catalina.policy file as mentioned in
http://dev.eclipse.org/newslists/news.eclipse.webtools/msg16795.html (= add a READ and WRITE permissions to the files in directory "{$tomcat.home}/conf" (chmod -vR a+rw {$tomcat.home}/conf/*). To be more specific, on the file "catalina.policy". After that, the Tomcat server can be added in the Eclipse servers)
(dead link) http://webui.sourcelabs.com/eclipse/issues/239179
and to have the tomcat5.5 stopped before entering eclipse and started afterwards.
Tomcat 6
In order to be able to use the tomcat6 server the proper solution is to have a user instance of the tomcat6 server as described in
/usr/share/doc/tomcat6-common/RUNNING.txt.gz
RUNNING.txt (on the WEB)
My configuration is Debian/Sid, Eclipse 3.4.1. Ganymede
The error view really is key. There is a lot of detail in there -- if necessary, right-click on the entries and copy their contents into your favorite text editor. One problem that can come up, for instance, is that if you have a server configuration already in place, and one of the configuration XML files is unparseable, the server can't be added. This happened to me this evening -- my <Context> element had a linebreak in it, so it was <C(linebreak)ontext>. This prevented Eclipse from recreating the server configuration.
i finally got mine to work with the default Ubuntu 8.10 tomcat. (the debug command-line on eclipse is a wonderful thing) First i had to make a couple of symbolic links and then change the permissions to a file. (you might want to think twice about changing the permissions depending on your configuration, but if eclipse can't read the file it throws and exception and the gui won't let you continue)
sudo ln -s /etc/tomcat6 /usr/share/tomcat6/conf
sudo ln -s /etc/tomcat6/policy.d/03catalina.policy /usr/share/tomcat6/conf/catalina.policy
sudo chmod a+r /usr/share/tomcat6/conf/tomcat-users.xml
Hum it can tricky. Bring the "server" view. If your project has already been deployed, remove it from the server to clean the binding between your project and the server.
Or you can right-click on your project in the project explorer and choose debug on the server. If you don't done it already, Eclipse should ask you to create a server runtime and here you can specify Tomcat 6 and specify the location of your server installation.
You can also see the "problems" view to see any problm in the project imported like the JDK etc...
Look in the error view. If you tried to set one up once and failed, Eclipse seems to try and look there again later just before allowing you to create a new one. If you've deleted the folder or its not there any more, you need to replace it so that you can proceed.
The only way I found to use the Tomcat 6 is changing the ownership of the Tomcat directory to my user. It seems that is not enough to have r/w permissions.
BTW, removing org.eclipse.wst.server.core.prefs erases you workspace configuration.
I had had same problem until I went to tomcat6 configuration directory and added ownership to my user in addition to root:
cd /usr/share/tomcat6/conf
chown root:myusername ./*
chmod 777 ./*
You can choose some better chmod for security, 777 is just a quick brutal fix.
I have Eclipse 3.5 (Galileo) + Fedora 12 + Tomcat 6 extracted from tar(which is why Eclipse could not access it). Eclipse had been complaining "Cannot create a server using the selected type".
What version of Eclipse? Europa? Ganymede?
What do you mean by workspace? An Eclipse workspace is not something you deploy, it holds your projects.
You will need to generate a WAR file (or the folder of files that would comprise the WAR file), a project would typically include an ANT or Maven build script to do this, or if the project used Eclipse's Dynamic Web Project type there might be a 'generate WAR' option somewhere. Without further details I can't help any more.
Adding a new dynamic web project to the workspace seems to 'unlock' the feature.
Changing the ownership to my user worked for me.
In my case, it was the corrupted Tomcat configuration files. Eclipse log was saying:
org.eclipse.core.runtime.CoreException:
Could not load the Tomcat server configuration at
C:\Program Files\Apache Software Foundation\apache-tomcat-6.0.14\conf.
The configuration may be corrupt or incomplete.
Got a new Tomcat distribution, removed the old one and all good now.
Finally got this problem solved on my system.
1) got rid of the apt-gotten tomcats
2) installed a typical tomcat from bins at tomcat.apache.org
3) got rid of my openjdk
4) installed the sun jdk (apt-get)
5) removed my web projects in eclipse
6) noticed that when adding a web project you can set "Target Runtime" - I tried setting it to Tomcat 6 and it let me know there was a problem
Maybe none of the above mattered, but here's what might have mattered:
7) KICKER: Window -> Preferences -> Server - Runtime Environments. Removed any crappy runtime environments here, and added the path to my newly installed tomcat.
This Question is maybe old. But I just ran into this problem. My project was not recognized as a web project (no globe icon in Eclipse ).
Suppose you use maven plugin , it failed to convert to web project with command
mvn eclipse:eclipse -Dwtpversion=1.5
In package Explorer, right-click on the project / configure / Convert to Java Facets project/ Dynamic Web project in Eclipse
Et Voilà
Check the .project file at the root before and after the convert.
You will see new natures.
<natures>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
</natures>
Instead of deleting config settings files, just go to Preferences -> Server -> Runtime Environments and remove the "forgotten" environment....
Thanks a lot this answer working for me..
I had a similar problem, but my solution is a little simpler. The problem was causesd by renaming the original folder that was referenced by the server definition.
Go to Window/Preferences/Server/Runtime Environments, remove the broken reference. Then, click 'Add' to create a new reference, select the appropriate tomcat version, click next and you'll see the incorrect path reference. Fix it. Move on.