Win a copy of Five Lines of Code this week in the OO, Patterns, UML and Refactoring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

Can't get Head First Java Code to run

 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
On p. 371, there is code for a SimpleGui3C class. The first bug I encountered is that the code for the paintComponent method of MyDrawPanel is supposed to be on p. 347, and it's not. (I think the right code is on page 367).

But that's not my real problem, which is that I'm using Eclipse and it is giving an error. It says:
"The serializable class MyDrawPanel does not declare a static final serialVersionUID field of type long."

HFJ doesn't say anything about this. So, I used the "QuickFix" option in Eclipse to fix it, choosing "Add default serial version ID."

However, there is still a problem. When I try to run this project as an application, I get a dialog box which says "Searching for main types...", and some scary-looking dialog box which says to choose a run type, but doesn't include "Application." So now my project won't build. :-(. Please help. Thank you in advance for any help.
 
Ranch Hand
Posts: 2410
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Do you have the main method?
 
Jacob Collins
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes, I have a main method.
 
Marshal
Posts: 69748
277
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you are using Eclipse, you should have a tree on the left with all the classes in your project in.
  • Navigate to the left window with the list of classes in.
  • Right-click the name of the class which has the main method in
  • From the drop-down list choose Run as.
  • From the second drop-down list choose Run as: Java Application, and click that.

  • That should get rid of the "scary box." Next time you run your app, use the green circle icon near the top left of the Eclipse window, which has a balloon help "run previously run application" or something similar.

    BTW: When you get your error "The serializable class MyDrawPanel does not declare a static final serialVersionUID field of type long," what colour does it come up in? I get that all the time. I get a yellow triangle next to the warning: this is Eclipse's shorthand for a "warning," which will still allow the app to run, as opposed to an "error," which is red with a cross on. You can't get your app to run if it has an "error" in. So you only need to correct "errors" (red).


    There is discusssion on part of this thread about what an SUID means, but it is not beginner's stuff. There is also discussion of serialization in Horstmann C, Cornell G, Core Java 2: vol I: Fundamentals, Upper Saddle River:Sun Microsystems Press/Prentice Hall 2004, page 667ff particularly page 680. But again, it is complicated stuff. You don't have to read it if you don't want to.

    CR

    Error: I said "run" when it should have been "run as."
    [ June 15, 2006: Message edited by: Campbell Ritchie ]
     
    Jacob Collins
    Greenhorn
    Posts: 8
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    oh, thanks so much! I was trying to run the application from the project level instead of the file level, so I was getting that "scary looking dialog." Because you told me exactly where to click, everything is working fine now. Thanks.
     
    Campbell Ritchie
    Marshal
    Posts: 69748
    277
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Glad to be able to help. It is nice when people get their applications to work.
      Bookmark Topic Watch Topic
    • New Topic