| Summary: | ipse.xtext.generator.LanguageConfig, StringIndexOutOfBoundsException: String index out of range: -1 | ||
|---|---|---|---|
| Product: | [Modeling] TMF | Reporter: | Joerg <hoehne> |
| Component: | Xtext | Assignee: | Project Inbox <tmf.xtext-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | jan, sebastian.zarnekow |
| Version: | unspecified | Flags: | sebastian.zarnekow:
indigo+
|
| Target Milestone: | SR2 | ||
| Hardware: | Macintosh | ||
| OS: | All | ||
| Whiteboard: | |||
|
Description
Joerg
Which generator configuration do you use? Could you please attache the complete output of the generation process? Affects current 1.0.2 version and beta of 2. The output is for a different example but shows the same behaviour. Xtext version 1.0.2.v201102150722 0 [main] INFO lipse.emf.mwe.utils.StandaloneSetup - Registering platform uri '/Users/hoehne/Documents/dataScientific/EclipseWorkspace' 1425 [main] INFO ipse.emf.mwe.utils.DirectoryCleaner - Cleaning /Users/hoehne/Documents/dataScientific/EclipseWorkspace/simlang/../simlang/src-gen 1432 [main] INFO ipse.emf.mwe.utils.DirectoryCleaner - Cleaning /Users/hoehne/Documents/dataScientific/EclipseWorkspace/simlang/../simlang.ui/src-gen 1581 [main] INFO ipse.xtext.generator.LanguageConfig - generating infrastructure for SimLang with fragments : ImplicitRuntimeFragment, ImplicitUiFragment, GrammarAccessFragment, EcoreGeneratorFragment, ParseTreeConstructorFragment, ResourceFactoryFragment, XtextAntlrGeneratorFragment, JavaValidatorFragment, ImportNamespacesScopingFragment, QualifiedNamesFragment, BuilderIntegrationFragment, FormatterFragment, LabelProviderFragment, TransformerFragment, OutlineNodeAdapterFactoryFragment, QuickOutlineFragment, QuickfixProviderFragment, JavaBasedContentAssistFragment, XtextAntlrUiGeneratorFragment java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at java.lang.String.substring(String.java:1937) at org.eclipse.xtext.generator.ecore.EcoreGeneratorFragment.getXmiModelDirectory(EcoreGeneratorFragment.java:483) at org.eclipse.xtext.generator.ecore.EcoreGeneratorFragment.getEcoreFileUri(EcoreGeneratorFragment.java:277) at org.eclipse.xtext.generator.ecore.EcoreGeneratorFragment.createResourceForEPackages(EcoreGeneratorFragment.java:116) at org.eclipse.xtext.generator.ecore.EcoreGeneratorFragment.generate(EcoreGeneratorFragment.java:161) at org.eclipse.xtext.generator.CompositeGeneratorFragment.generate(CompositeGeneratorFragment.java:81) at org.eclipse.xtext.generator.LanguageConfig.generate(LanguageConfig.java:69) at org.eclipse.xtext.generator.Generator.generate(Generator.java:296) at org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:106) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126) at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201) at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:31) at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:80) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:52) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35) 5808 [main] INFO or.validation.JavaValidatorFragment - executing generate for org.eclipse.xtext.generator.validation.JavaValidatorFragment 7088 [main] ERROR g.eclipse.xtext.generator.Generator - java.lang.NullPointerException org.eclipse.emf.common.util.WrappedException: java.lang.NullPointerException at org.eclipse.xtext.generator.Generator.mergeManifest(Generator.java:353) at org.eclipse.xtext.generator.Generator.generateManifestRt(Generator.java:320) at org.eclipse.xtext.generator.Generator.invokeInternal(Generator.java:115) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126) at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201) at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:31) at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:80) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:52) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35) Caused by: java.lang.NullPointerException at org.eclipse.xtext.generator.MergeableManifest.mergeIntoCommaSeparatedList(MergeableManifest.java:278) at org.eclipse.xtext.generator.MergeableManifest.addExportedPackages(MergeableManifest.java:254) at org.eclipse.xtext.generator.Generator.mergeManifest(Generator.java:341) ... 11 more 7089 [main] INFO .emf.mwe2.runtime.workflow.Workflow - Done. Can you reproduce this one with the RC3 of Xtext 2.0 ? The given stacktrace does not match the code in the repository. Please provide your manifest files for the runtime and ui plugin as well as the generator workflow. Thanks! This one is still reproducable with the latest version from Xtext 2.0 Head. Postponed to 2.0SR1 since this is not a regression. To fix the reported issue is easy, but you'll run into further problems: - null values in the exported package list - a package named "null" as the base package of all generated classes In the generator, there are many places where we make the assumption that the base package is not null. OSGi won't export the default package anyway. I see two solutions 1) to choose a default package name in the situation where the grammar doesn't specify a package or 2) report an error instead of a warning. Any opinions? +1 for marking this as an error Marking an error now. Pushed to MASTER. Closing all bugs that were set to RESOLVED before Neon.0 Closing all bugs that were set to RESOLVED before Neon.0 |