Eclipse project which depends on another one - Class not found exception - eclipse

I've got 2 projects in the same workspace where one of them is added as a "required project" to the properties of the other one.
If I try to run the project I keep getting ClassNotFound Exceptions (probably because the bin directory isn't part of the runtime classpath?!)
Is there any nice way to fix this?
Maybe there is any solution where my teammates who work on the same project (via SVN) don't have to do any configuration on their machines.
Thanks a lot in advance,
Martin

Try cleaning and rebuilding your work space.

Related

IntelliJ show errors in scala source files but the project compiles successfully

I'm working with project in intellij IDEA IDE based in maven. I can perform all maven goals but IntelliJ is showing a lot of errors in the source code like bellow:
Everything worked fine a few hours ago. I don't understand why the IDE continue
showing errors. When I rebuild or compile the entire project (CTRL + F9) or a single
scala class I always receive a success message like that:
I already had configured scala plugin before, so I don't know what is happen.
thanks for your help
Sometimes the IntelliJ cache gets corrupted. You can fix this by the following:
File > "Invalidate Caches / Restart"
After choosing "Invalidate and Restart" when prompted, IntelliJ will restart and rebuild its cache.
If IDEA has lost track of obviously correct types such as Database or DateTime it probably means the configuration of the project is wrong or corrupted. Most commonly it does not have the required 3rd part dependencies such as Joda Time.
If you're not already doing so, define your project solely in SBT and use the sbt-idea plug-in to produce your IDEA project definition. Then whenever you change the project dependencies, re-run gen-idea to regenerate your IDEA project files. No muss, no fuss.
There are many bugs raised in jetbrains's bug tracker for this. I suggest you raise some bugs or vote for existing ones.
It loos like the problem you have is with the type aware highlighting which is worse than useless.
thanks for your responses.
I solved this problem importing the project again.

Groovy Eclipse can't launch junit tests

In Eclipse with groovy plugin, I try to launch a test #Test public void testToLaunch() {...} but I have the error:
The input type of the launch configuration does not exist
What input type is in the context of launch configuration? (can't find such an entry in launch configuration window)
Note: I try sts 2.8.1 and e3.7
This happens normally when the folder in which test case is present is not a source folder, please check this post as well.
Hope that helps!
This can also happen if there is a problem with the groovy class. A few things to check:
1) Ensure that the class name exactly matches the filename (filename = MyTest.groovy)
package com.mypackage;
import groovy.util.GroovyTestCase;
class MyTest extends GroovyTestCase {}
2) Ensure that the package defined in the file matches the package the file is actually in.
In Eclipse you can do
Right click -> properties -> Java build path
Notice test folder is not available in sources. Add it.
Add folder -> Select test -> OK
Now rerun you unit test cases.
This happened to me, and I just restarted Eclipse (GGTS) and everything was fine again.
I had a spelling mistake which lead to that error message. My test class file name was named JUnit5Test.java (with upper U) and the class itself was named Junit5Test (with lower u).
I was using Spring Tool Suite 4 (4.8.0.RELEASE).
This also happened to me. But these tests are written in Groovy. The problem I encountered has to do with how the IDE (Eclipse Kepler, Java EE) first opens a Groovy project after executing "mvn eclipse:eclipse".
The Build Paths do not reference the Groovy source files correctly.
To resolve, I:
Right-click on the project, select "Build Path" > "Configure Build Path..."
Select "Source" tab
For test and src folders (.../src/main/groovy, and .../src/test/groovy)
make sure "**/*.groovy" is set as "Inclusion patterns", not "**/*.java"
Hope this saves time for someone.
Cheers!
I had the same error message when I head the test-class duplicated both in the main Java source folder and the testsrc folder. Removing the incorrectly placed one in the main Java source folder solved the problem for me.
2019 Update: This drove me crazy for days even with latest Eclipse and fresh installs (Mac, Grails 4, Gradle 5.1.1, Java 8). Some above examples led me to the solution.
My problem was more that the code I was testing included a mix of groovy and java src/main code. It gave me NoClassDefFound on the .groovy classes when I ran my Spec as JUnit.
Solution: I had to modify my Run/Debug Configuration to include build/classes/groovy/main. Then it worked. It's a little bit of a pain to remember to that for every new Configuration, but, it keeps me going. I hope it helps you.
Whenever you create a Junit test in eclipse, make sure your Junit test file is inside src/test/java folder.
I had a similar problem. Like others have already pointed out, it was about source folders. I had to change my source folder setup. There was an empty src-folder that disappeared after I right-clicked on it and selected 'remove from build path' from Build path menu. After that I right-clicked both java/src and java/test folders and chose Build path > Use as a source folder. And suddenly my tests were JUnited!
In similar situations I'd advice to remove all source folders from build path and add them again when you're sure you've got the right ones. Your source folders should be those with Java package structure under them. In case of proj/java/test/com/stackoverflow/main it's the 'test' folder.
This is what resolved for me (Eclipse Oxygen). I had already done what Robert suggested in the earlier post. I was still getting the error. When I went to edit the configuration for junit launch, I saw that the Test Class field just had the class name. I had to hit the Search button to the right. The Test Class field now had the complete name for the class
com.mycompany.mypackage.MyClass
With this I am able to run the JUnit. But I have to keep fixing this for every run.
Found another way to cause this message. The cause turned out to be an empty copy of MyTest.java under src/main/java, as well as the real one under src/test/java.
Think the empty file was a hangover from some refactoring and was oddly causing no compile errors either. Deleting it enabled the test to run again.

GlassFish NoClassDefFoundError - Netbeans project

I'm sometimes getting NoClassDefFoundError after deploying web application in Netbeans (6.9.1). It's actually problem with Netbeans not deploying entire project (not copying class files or other relevant files), but only part of it.
Running "Clean & Build" a few times and/or copying rest of the files solves the problem, but it's very inconvenient.
Anyone knows the cause or solution of this problem?
Try clearing your Netbeans cache, or check out the bug fixes for Netbeans 7.
The cache is at ~/.netbeans/6.9/var/cache. I found instructions to just delete the index/ folder in the cache, but that didn't seem to be enough.
EDIT: Deleting the entire cache didn't seem to resolve it, either.
Your answer is not much clear but,
I suggest to add your required jar files in Netbeans library then import the library into your project..
If this does not work then i'll be glad to having the complete situation and errors to be written here...

Eclipse ignoring source when deploying webapp

I'm running eclipse with tomcat 5.5. For some unknown reason from one day to the other eclipse stoped compiling my beans and java files that are in the source folder.
If I go to the work directory, I find all the JSP compiled, the folders of the packadges i have, but no classes compiled inside of them. Neither eclipse, nor tomcat give errors. (Except when i try to access the non existing classes)
Anyone has any idea why this happens and how to fix it?
/fmsf
You might have "Build automatically" disabled. You can find it in the Project menu.
I've faced with such a scenario once. In addition it did not detect the local changes w.r.t the code repository. Honestly I don't know the reason but use of a new eclipse installation (Extraction) on same workspace resolved the issue.
Found the problem:
One of the files came out of SVN without read access. Eclipse blocked reading it and wouldn't compile.
+1 to all tks

Eclipse won't delete files

I've got an ANT project with libs managed by ivy (they are under lib_managed). Eclipse is using the jars to. Probelm is: if I try to update the directory ant refuses to delete it because eclipse holds on to the jars in its classpath. Even if I update (empty) eclipses classpath I can't delete the files. If anyone had the same problem and found a solution I would be thankfull for an answer.
Regards, Jan
Not a solution, but a workaround. I experience Eclipse keeping locks on files quite often in different contexts. I suggest using Unlocker.
I guess this is on Windows. Use the Process Explorer to figure out who is locking the files. Eclipse shouldn't keep a lock; maybe you have the code running in the debugger (hanging in a breakpoint). Use the list of open files and the properties to figure out which Java program is keeping the lock on the files.
If it's really Eclipse, try to upgrade to a newer version of Eclipse or close the project when you need to update the dependencies with ivy.
Cleaning the workspace and restarting eclipse may solve the problem. But in real development environment i don't think its a good idea to restart eclipse whenever you need to build a jar.