Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot resolve method 'access$000()'

I don't have access to java source code, I have created java code from jar files. I need to modify one of the java file to add some additional functionality, it is complaining about one inner class method

return Survey.access$000();

It is saying Cannot resolve method 'access$000()' What should I do to get rid of this error So far I haven't modified any thing after I reverse engineered the jar file. The class in question is Survey and it has the following inner class

private static class SurveyPermissionCatalogFinder
/*     */     implements PermissionCatalogFinder
/*     */   {
/*     */     private static final long serialVersionUID = 1L;
/*     */     private static SurveyPermissionCatalogFinder one;
/*     */ 
/*     */     public PermissionCatalog getCatalog()
/*     */     {
/* 225 */       return Survey.access$000();
/*     */     }
/*     */     public static SurveyPermissionCatalogFinder getInstance() {
/* 228 */       if (one == null) {
/* 229 */         one = new SurveyPermissionCatalogFinder();
/*     */       }
/* 231 */       return one;
/*     */     }
like image 366
Mohammed Ahmed Avatar asked Jun 07 '11 19:06

Mohammed Ahmed


1 Answers

Looks like there originally was some private variable being accessed in an inner class. Can't say what you should do about it except that you can't always expect decompiled classes to be valid Java source code.

Have a look at the question below for an explanation of the mysterious access$000() method.

  • java inner/outer class questions about outer class private variables access
like image 197
aioobe Avatar answered Oct 03 '22 11:10

aioobe