?
Solved

cannot resolve symbol problem with borland jbuilder

Posted on 2003-10-11
9
Medium Priority
?
431 Views
Last Modified: 2008-03-03
I am trying to recompile a java applet I decompiled. I decompiled them all, then I renamed them to .java and placed them into a project in borland jbuilder. I tried to compile it, but got the following errors, can someone please help?

"PantyChat.java": cannot resolve symbol: class n in class PantyChat at line 23, column 3
"PantyChat.java": cannot resolve symbol: class o in class PantyChat at line 32, column 3
"PantyChat.java": cannot resolve symbol: class p in class PantyChat at line 33, column 3
"PantyChat.java": cannot resolve symbol: class q in class PantyChat at line 34, column 3
0
Comment
Question by:freqout
8 Comments
 
LVL 86

Accepted Solution

by:
CEHJ earned 672 total points
ID: 9533288
You need to process *all* the classes. Looks like you've missed out some (inner classes?)
0
 

Author Comment

by:freqout
ID: 9534082
I put them all in, but how do I make them see each other
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 9534220
You can't. If they are no meant to, then they won't, if they are then they will unless you have a problem with your decompiler.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 92

Assisted Solution

by:objects
objects earned 664 total points
ID: 9535110
You should have files n.class, o.class, p.class, q.class.
If you don't have them then check on the server where you downloaded the applet and download them from there.
0
 
LVL 2

Expert Comment

by:prcsn1
ID: 9537925
It looks as if the applet has been obfuscated by the compiler. This is an attempt to make the code unreadible, even undecompilable. It does this by renaming everything it can to silly short names, to make the code hard to read. Names like n, o, p, q - these don't sound lie the original names to me. Not names I'd use anyway.

If it's a "good" obfuscator, it can make the decompilation not work at all or at the very lease be very confusing. And I think it has.

So I suspect you are not going to get very far.

I'd give up if I were you!
0
 
LVL 92

Expert Comment

by:objects
ID: 9538118
I'd say it certainly has been obfuscated, but those classes should still be available.
0
 
LVL 4

Assisted Solution

by:fva
fva earned 664 total points
ID: 9538183
The classes might be available allright, but the JAR structure allow for several files being "overloaded" into the same name. One trick I've seen is that the JAR containing the obfuscated classes has more than one copy of foo.class. When using vanilla methods to extract the foo.class file, you will get the latest in JAR order, but that's not the good one. The application itself makes use of its special classloader that knows how to look "under the hood" and get the right class.
I'm afraid prcsn1 is right, unless you are _very_ determined to do this. Which s not very nice ... :)

0
 
LVL 2

Expert Comment

by:glottis
ID: 10090596
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

-- Split between CEHJ, objects and fva  answer.

Please leave any comments here within the next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

glottis
EE Cleanup Volunteer
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
The viewer will learn how to implement Singleton Design Pattern in Java.
Suggested Courses
Course of the Month12 days, 18 hours left to enroll

578 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question