[ https://issues.apache.org/jira/browse/GROOVY-8876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King closed GROOVY-8876. ----------------------------- > groovydoc fails with "java.lang.StringIndexOutOfBoundsException: String index > out of range: -1" on file with no extension > ------------------------------------------------------------------------------------------------------------------------- > > Key: GROOVY-8876 > URL: https://issues.apache.org/jira/browse/GROOVY-8876 > Project: Groovy > Issue Type: Bug > Components: GroovyDoc > Affects Versions: 2.4.8 > Environment: $ groovy --version > Groovy Version: 2.4.8 JVM: 1.8.0_181 Vendor: Oracle Corporation OS: Linux > Reporter: Craig Ringer > Assignee: Paul King > Priority: Minor > Fix For: 2.4.16, 3.0.0-alpha-4, 2.5.5 > > > If you invoke {{groovydoc}} on a file with no file extension, such as a > {{Jenkinsfile}} used in Jenkins Pipeline scripts, it fails with > {{java.lang.reflect.InvocationTargetException ... caused by > java.lang.StringIndexOutOfBoundsException: String index out of range: -1}}. > Full exception: > {code} > $ groovydoc Jenkinsfile > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:109) > at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:131) > Caused by: java.lang.StringIndexOutOfBoundsException: String index out of > range: -1 > at java.lang.String.substring(String.java:1967) > at > org.codehaus.groovy.tools.groovydoc.SimpleGroovyClassDocAssembler.<init>(SimpleGroovyClassDocAssembler.java:67) > at > org.codehaus.groovy.tools.groovydoc.GroovyRootDocBuilder.parseGroovy(GroovyRootDocBuilder.java:131) > at > org.codehaus.groovy.tools.groovydoc.GroovyRootDocBuilder.getClassDocsFromSingleSource(GroovyRootDocBuilder.java:83) > at > org.codehaus.groovy.tools.groovydoc.GroovyRootDocBuilder.processFile(GroovyRootDocBuilder.java:213) > at > org.codehaus.groovy.tools.groovydoc.GroovyRootDocBuilder.buildTree(GroovyRootDocBuilder.java:168) > at > org.codehaus.groovy.tools.groovydoc.GroovyDocTool.add(GroovyDocTool.java:82) > at org.codehaus.groovy.tools.groovydoc.GroovyDocTool$add.call(Unknown > Source) > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) > at org.codehaus.groovy.tools.groovydoc.Main.execute(Main.groovy:214) > at org.codehaus.groovy.tools.groovydoc.Main.main(Main.groovy:180) > ... 6 more > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)