BTW, you didn't have to rename your .proto file. You could have just used the java_outer_classname to make it produce a different class name.
On Thu, Nov 13, 2008 at 11:40 AM, Kenton Varda <[EMAIL PROTECTED]> wrote: > You're using the java_multiple_files option, I take it? > The outer class is still necessary to store the file's descriptor and any > top-level extension definitions. I suppose the descriptor could be moved > into the first class defined in the file but it will take some work and > seems like a low priority. I don't think it ever makes sense to put the > extensions inside some other class but not all protos have top-level > extensions. > > > On Thu, Nov 13, 2008 at 10:04 AM, bmadigan <[EMAIL PROTECTED]> wrote: > >> >> I think I'm missing somthing in the style guidelines. If I have a >> proto file called "trip_summary.proto", which contains a message >> "TripSummary", protoc throws the following error: >> >> -protoc-single: >> [exec] --java_out: trip_summary.proto: Cannot generate Java >> output because the file's outer class name, "TripSummary", matches the >> name of one of the types declared inside it. Please either rename the >> type or use the java_outer_classname option to specify a different >> outer class name for the .proto file >> >> So, renaming the file to 'trip_summary_protos.proto', protoc generates >> 2 Java files, one called TripSummaryProtos.java, containing a static >> TripSummaryProtos, which contains an inner TripSummary class. >> Setting the option 'java_multiple_files=true', I get 2 java files, >> with the TripSummary class referencing all of the static members of >> TripSummaryProtos. This doesn't cause any problems with using >> TripSummary class (that I know of), but why is the container class >> necessary? >> Should I just define all of my messages in one file and ignore the >> outer class in my code? >> -bmadigan >> >> >> > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To post to this group, send email to protobuf@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/protobuf?hl=en -~----------~----~----~----~------~----~------~--~---