Question

I am now doing a project using Eclipse, and I have some resource files (e.g., image, text) saved in the bin folder, and these files are needed by the program.

However, with every build, Eclipse would try to clean up the folder, then rebuild the project. When cleaning, it deletes the resource files in the folder. Is there anyway to stop Eclipse from doing this?

I know I could change the location of the files, but I am also curious why Eclipse would do this, and could this be prevented from happening.

Thanks!

Was it helpful?

Solution

I can't say exactly why it does it, but probably that's just how Eclipse does the build: empty the "output folder" and start compiling.

That said, if you put your files into a source folder, then Eclipse will simply copy the files over to bin on every build and they won't disappear. It will do this to any file it doesn't know how to compile, e.g. .xml, .xsd, .png, etc.

OTHER TIPS

Go to Options -> Java-> Compiler -> Building and uncheck Scrub output folders when cleaning projects.

That did the trick for me. In my project, I have an Ant task that adds a few configuration resources to the bin folder to include them in the classpath, without having them in src

You can consider using a maven style project and add the resources to the resources folder.

Here is a link to maven directory layout.

What kind of project you are using in eclipse. You can turn off build automatically feature in the Project menu. Which would stop eclipse from cleaning up projects automatically.

Copy and paste your resources into the source folder. In eclipse, in package explorer, find your project, then paste into src. It then gives an option to copy the file or link to it. Click copy and it gets stored in /bin but won't get deleted.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top