Community
Participate
Working Groups
Exception when compile a project under svn. java.io.FileNotFoundException at java.io.FileOutputStream.open(Native Method) at java.io.FileOutputStream.<init>(FileOutputStream.java:179) at java.io.FileOutputStream.<init>(FileOutputStream.java:131) at org.aspectj.util.FileUtil.makeOutputStream(FileUtil.java:1258) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.writeResource(AjBuildManager.java:466) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.copyResourcesFromFile(AjBuildManager.java:444) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.copyResourcesToDestination(AjBuildManager.java:386) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:298) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:185) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.incrementalBuild(AjBuildManager.java:163) at org.aspectj.ajde.internal.CompilerAdapter.compile(CompilerAdapter.java:117) at org.aspectj.ajde.internal.AspectJBuildManager$CompilerThread.run(AspectJBuildManager.java:191) FileNotFoundException thrown: /home/chomats/Fede/svn/fede-repos/Tool.Product.ProductServer/classes/.svn/format (Permission non accordée)
I presume svn is subversion. the compiler appears to be failing to copy a resource from input to output because of a permissions problem. Are the permissions on that file set such that the compiler should be able to access it?
Comment from Stephane that didnt get on the bug: > Yes,the project is under subversion control but in this cas, svn > plugin is not installed. The file 'format' is read only. but it's > allready present in output folder. > -r--r--r-- 1 chomats users 2 d?c 23 11:11 format > The aspecj compiler must not copy the .svn resource form input to > output. It looks like I just need to augment our ignore list with svn information, it currently reads that we ignore: (resourceName.startsWith("CVS/")) || (resourceName.indexOf("/CVS/") != -1) || (resourceName.endsWith("/CVS")) || (resourceName.endsWith(".class")) || (resourceName.toUpperCase().equals(MANIFEST_NAME)) can you tell me if there is a suitable pattern for svn files, are they always in a .svn directory? in which case this will work: resourceName.indexOf("/.svn/") != -1) || resourceName.indexOf(".svn/") != -1) || resourceName.indexOf("/.svn") != -1) ||
SVN uses directories named ".svn" (with a whole bunch of files and folders underneath them).
thx Adrian. Proposed fix committed. waiting on build.
fix available in latest AspectJ build - will be in AJDT shortly.