build path - the declared path does not meet the expected package - eclipse

I've managed to clone a running-app from Github that my friend developed.
However,on my eclipse, it did not run and showed many errors, mainly "build path" error.
These build path errors occurred due to the open source java projects, such as "actionbarsherlock" and "slidingmenu-library"
So I imported them as well, but the build path error remains.
what's worse, when I hovered my mouse over these open sources,
it said
The declared package "com.jeremyfeinstein.slidingmenu.lib.app" does not match the expected package "library.src.com.jeremyfeinstein.slidingmenu.lib.app
I am clueless on where to start. Many comments that I've read told me clean my projects - that did not work. I tried to edit "sources" path, but failed.
can anyone please tell me what steps I should follow to deal with these errors?
Why do these build path errors occur? the APK file worked perfectly on the phone.

If you right click the project and go to build path - configure build path do you have any errors?
Also, is there a red ! on your project?
If so, it means that it can't access something on the build path. You will need to point it to the libraries required.

Related

The project was not built due to "ProjectXX does not exist".

I am trying to set up a workspace in MyEclipse. And I am getting 20 errors with the same description as below.
Description Resource Path Location Type
The project was not built due to "ProjectXX does not exist". Fix the problem, then try refreshing this project and building it since it may be inconsistent ProjectXX Unknown Java Problem
Now I can see that this project, ProjectXX is clearly in my workspace and it is a EAR project. My team does not face this issue in their MyEclipse/PC.
I dont know why, but this resolved my issue. I selected the option to import existing Gradle project into workspace and then gave the exact root folder of the project and then the errors were gone.
I had the same problem and the solution was to deactivate the "Java Builder" property. To do it, just open the project properties with right click, go to "Builders" and deactivate "Java Builder". You can now delete the errors, validate the project and the problem is never seen again.
Thanks to #Tony Weddle for the hint "the EAR is not a Java Project".

Eclipse does not show source code of maven dependencies in debug view

I've filed a bug by now: 495662 - Source Lookup: Not seeing source code in the debug view.
My issue sounds familiar but it can't be since that issue appears to be fixed. However,
I have set a breakpoint in a class coming from a dependency (via maven). The source code got downloaded but as the program reaches the line all I get to see is
Source not found.
I've tried to add lookup paths by clicking at "Edit Source Lookup Path..." but nothing changed. I don't know what I have to add such that the debugger finds the sources.
It appears that this stopped working for all my dependencies.
How did I break my source lookups and how can I fix it?
Could be important:
I am running my tomcat from a maven build these goals:
tomcat7:run-war -am -pl mz-web-server -Denv=dev
but this hasn't been a problem so far.
Further, none of my maven dependencies e.g. gwt-user*.jar or `spring*.jar or anything are listed in the Source Lookup Path. There is only the "Default" path which doesn't contain it either - shouldn't those jars be somewhat listed there?
After downloading Eclipse Mars 2, removing my project completely and re-importing it without any .settings, .project or .classpath files, I am still seeing this problem. I can't tell if this is really an Eclipse bug but at this point I don't know what else it could be.
I also tried removing C:\Users\<username>\.eclipse and restarted the IDE without different results.
These are the included libraries under Maven Dependencies. As you can see e.g. spring-security-core-*.jar is included and the source is pointing to the local maven repository. Clicking on edit I see the full path C:/Users/Stefan/.m2/repository/org/springframework/security/spring-security-core/4.0.3.RELEASE/spring-security-core-4.0.3.RELEASE-sources.jar and yes, the file is really there.
My Classpath Variables:
I don't know what the actual problem was and why it stopped working. As you can take out of my question I actually downloaded a clean version of Eclipse, checked out the naked project and imported it with maven without results.
However, I found this com.ifedorenko.m2e.sourcelookup plugin. The link was provided in "Java Debugging: Source not found".
Go to Help > Install New Software .. and use
http://ifedorenko.github.com/m2e-extras/
to search for the links. After installing this plugin I was finally able to debug the source code of dependencies.
Tested for Eclipse Neon:
Press 'Edit Source lookup ...', press Add button for 'Java Classpath Variable' in dialog and choose M2_REPO variable and press 'Extend...'.
Then choose source jar file for wanted dependency from file system tree.
After that press 'OK' on all dialogs and relaunch debug process.

How to fix Google Play Services 2 Library install to Eclipse

I've tried to follow https://developer.android.com/google/play-services/setup.html instructions in Eclipse for Mobile Developers (Juno), but am getting multiple errors with the library package after importing the library project into my workspace. I fixed the AndroidManifest.xml error it reported, but now I can't open the project in Eclipse saying the .project description file contains invalid information. So much for a simple install. I've tried uninstalling it, redownloading it, and I still get the multiple errors. Any suggesions how to get it working?
There is a misleading step in step 3 of http://developer.android.com/google/play-services/setup.html:
Copy the
/extras/google/google_play_services/libproject/google-play-services_lib
library project into the source tree where you maintain your Android
app projects.
If you are using Eclipse, import the library project into your
workspace. Click File > Import, select Android > Existing Android Code
into Workspace, and browse to the copy of the library project to
import it.
Don't do the first copy. Instead just do the second part and check the box that says "Copy projects into workspace". I found that if I did the first part I would end up with empty xml files.
Try the following :
https://developers.google.com/maps/documentation/android/intro#sample_code
You would get errors while opening an activity mentioned in the sample code. That is because android.support.v4.app.FragmentActivity is not added to your build path. Hover over the error and click on "Fix Project Setup". It would ask you to add the lib to the build path. Say Yes and enjoy :)
If your google_pay_services/libproject is empty (mine was empty) and looks like installed in sdk manager, first delete google play services from sdk manager, install it again and follow the steps in the first answer.
Try Window > Android SDK Manager > Extras > Google play service > Delete package.
And then re-install that package again:
File > Import, select Android > Existing Android Code into Workspace
I had the same problem. I went to Properties->Java Build Path and clicked on the Projects tab. Then I added google-play-services_lib using the Add button. This got me this run-time exception:
E/AndroidRuntime(9469): Caused by: java.lang.ClassCastException: com.google.android.gms.maps.MapFragment cannot be cast to android.support.v4.app.Fragment
So then I changed the main.xml file entry from this:
android:name="com.google.android.gms.maps.MapFragment"
to this:
android:name="com.google.android.gms.maps.SupportMapFragment"
And FINALLY, it runs, but NOW no map due to authorization failure. So I am off on another search.
thanks Google for making it so complicated and for posting incorrect instructions!

Eclipse says there's an error, but where?

If I do Project -> Clean and then Build, everything is fine, but if I try to run this Android-project, a dialog comes up: "Your project contains errors. Fix them before running application", and there's a red cross on the project name.
There's no cross on any item in the project tree, and nothing in Console view or LogCat view. So, where's the error?
The only difference for this project and an earlier working version was that I removed a link to an external .jar file, created folder "lib" and put the .jar in there, and added that .jar to the build path. The .jar is the exact same as the external referenced.
You may need to Refresh your project in order to see the errors. Also, bring up the Problems tab for more specific information (Window > Show View > Other > General > Problems).
Eclipse shows the Errors in the Problems View.
It's difficult to guess but I would check the build path (right click the project and see), if some entry is missing there then there can be this error sign. Another reason of this red error sign is, if this project includes some other java project in path which has any errors (compilation or build path), then it will also display errors.
I had this error when I deleted a library, but did not remove it from the build path. Go to Properties - Java Build Path - Libraries. And see if you see something like "can't find library" and remove it.

Why are static library headers not found?

I've used Clint Harris' tutorial to set up code sharing between projects, and everything works just as expected on my computer. But on my co-worker's machine, it seems the compiler doesn't find the header file from the static library project when he builds.
My co-worker got my project by cloning a git repository. We've gone through all relevant build flags and XCode settings n times, but the project simply refuses to compile on his machine.
This is what I asked my co-worker to do, mostly copied and pasted from the tutorial:
Make sure there is NO blank space in the complete path to the projects' directory.
Inside the projects directory, create another folder called "build_output".
In XCode, under “XCode > Preferences" choose the "Building” tab and set “Place Build Projects in” to “Customized location” and specify the path to the common build directory you created.
Set “Place Intermediate Build Files in” to “With build products.”
Choose the “Source Trees” tab and create a new Source Tree variable by clicking on the “+” button and filling in the columns. In both "Setting Name" and "Display Name", put
[the name of the shared project which created the static library]. In path, you put the full path to the framework folder.
Following these steps, the project that uses the static library should compile the same on his machine as on mine. But it doesn't. Basically, the error he gets is:
error: TheFrameworkHeader.h: No such file or directory
and then a string of other errors caused by the missing header.
Any strategies for trouble-shooting this? Or anyone who had a similar experience and could share some hard-earned knowledge? Is anything missing from the instructions I've summarized? Do I need to set the roles of headers in the Copy Headers build phase when compiling a static library?
Despite some helpful advice, I never figured this one out, but here's a little info for anyone in a similar situation. I created the library and dependent project by splitting an original project into two. At first, the library and application were just two targets within the same project. Later, I moved the app to a separate project. Everything seemed to work, and I pushed both projects to remote git repositories. When these were cloned on other computers, however, the library headers were not found.
Later, I discover that the same error occurred when I cloned the projects on the original computer. After a lot of struggle, I pinned it down to one scary detail: the name of the dependent project's folder! (That is, the project with the application, not the library.) Not the name of the .xcodeproject package, not the application identifier, but the name of the containing folder. As soon as I change that, everything works. If I change it back to the original name (on any computer), again the headers are not found.
If anyone has any insight on this, please post an answer!
EDIT: Since I posted this, the same problem occured with another project, and again, merely renaming the folder that contains the .xcodeproject folder fixed the problem.
I don't think it is Git, I think it's xcode. I got a very similar problem here, where xcode / xcodebuild resolves an include path falsely (making it a simple .) With the exactly the same library project and xcconfig files (clean checkout from svn repo) but another containing folder - it works. So, thanx for the solution and don't blame Git anymore ;-)
I often forget to check this: are you sure that the missing file (i.e., TheFrameWorkHeader.h" is in the git repository? It may well be that your build settings are correct, but the file somehow did not get added to git correctly.
If you're having trouble building on a particular machine, then the problem likely is a machine or user setting. Such as an environment variable (perhaps INCLUDE_PATH or one of its relatives -- XCode uses GCC). You may have a "." in one of these variables.
The best way to fix this would be to add the needed folder path to the -I switch in the build script.
Double check that the "Search Paths->User Header Search Paths" build setting (for all configurations) points to the directory containing the shared Xcode project (you can use the new Source Tree variable you created).