JFinal 打包遇到问题Index 1 out of bounds for length 1

JFinal框架遇到打包问题。JDK11

img


```报错
[INFO] --- maven-jar-plugin:2.6:jar (default-jar) @ mes_workstation ---
[WARNING] Error injecting: org.codehaus.plexus.archiver.jar.JarArchiver
java.lang.ExceptionInInitializerError
    at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method)
    at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance (Constructor.java:490)
    at com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy.newInstance (DefaultConstructionProxyFactory.java:126)
    at com.google.inject.internal.ConstructorInjector.provision (ConstructorInjector.java:114)
    at com.google.inject.internal.ConstructorInjector.access$000 (ConstructorInjector.java:32)
    at com.google.inject.internal.ConstructorInjector$1.call (ConstructorInjector.java:98)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:112)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:127)
    at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:66)
    at com.google.inject.internal.ConstructorInjector.construct (ConstructorInjector.java:93)
    at com.google.inject.internal.ConstructorBindingImpl$Factory.get (ConstructorBindingImpl.java:306)
    at com.google.inject.internal.InjectorImpl$1.get (InjectorImpl.java:1050)
    at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1086)
    at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
    at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:85)
    at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:57)
    at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:66)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:112)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:127)
    at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:66)
    at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:61)
    at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:47)
    at com.google.inject.internal.InjectorImpl$1.get (InjectorImpl.java:1050)
    at org.eclipse.sisu.inject.Guice4$1.get (Guice4.java:162)
    at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
    at org.eclipse.sisu.plexus.LazyPlexusBean.getValue (LazyPlexusBean.java:51)
   
   .......
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
    at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
    at org.codehaus.plexus.archiver.zip.AbstractZipArchiver. (AbstractZipArchiver.java:116)
    at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method)
    at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance (Constructor.java:490)
    at com.google.inject.internal.DefaultConstructionProxyFactory$ReflectiveProxy.newInstance (DefaultConstructionProxyFactory.java:126)
    at com.google.inject.internal.ConstructorInjector.provision (ConstructorInjector.java:114)
    at com.google.inject.internal.ConstructorInjector.access$000 (ConstructorInjector.java:32)
    at com.google.inject.internal.ConstructorInjector$1.call (ConstructorInjector.java:98)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:112)
    at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:127)
    at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:66)



pom.xml


```xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0modelVersion>


    <groupId>com.demogroupId>
    <artifactId>mes_workstationartifactId>
    <version>3.0.0version>
    <packaging>jarpackaging>


    <name>mes_workstationname>

    <url>http://jfinal.com/user/1url>

    <properties>
        <project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
        <maven.compiler.encoding>UTF-8maven.compiler.encoding>
        <java.version>11java.version>
        <maven.compiler.source>11maven.compiler.source>
        <maven.compiler.target>11maven.compiler.target>
    properties>

    
    <repositories>
        <repository>
            <id>ali-mavenid>
            <url>http://maven.aliyun.com/nexus/content/groups/publicurl>
            <releases>
                <enabled>trueenabled>
            releases>
            <snapshots>
                <enabled>trueenabled>
                <updatePolicy>alwaysupdatePolicy>
                <checksumPolicy>failchecksumPolicy>
            snapshots>
        repository>
    repositories>

    
    

    <dependencies>
        
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-pool2artifactId>
            <version>2.6.0version>
        dependency>

        
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-lang3artifactId>
            <version>3.8.1version>
        dependency>
        
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-collections4artifactId>
            <version>4.2version>
        dependency>
        
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-compressartifactId>
            <version>1.19version>
        dependency>

        
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-math3artifactId>
            <version>3.6.1version>
        dependency>
        
        
        <dependency>
            <groupId>redis.clientsgroupId>
            <artifactId>jedisartifactId>
            <version>2.9.0version>
        dependency>

        
        <dependency>
            <groupId>de.ruedigermoellergroupId>
            <artifactId>fstartifactId>
            <version>2.57version>
        dependency>
        

        
        <dependency>
            <groupId>com.lastB7groupId>
            <artifactId>jfinal-swagger-knife4jartifactId>
            <version>2.6version>
        dependency>

        
        <dependency>
            <groupId>io.swaggergroupId>
            <artifactId>swagger-annotationsartifactId>
            <version>1.6.2version>
        dependency>

        
        
        <dependency>
            <groupId>cn.hutoolgroupId>
            <artifactId>hutool-allartifactId>
            <version>5.5.2version>
        dependency>

        

        
        <dependency>
            <groupId>org.quartz-schedulergroupId>
            <artifactId>quartzartifactId>
            <version>2.3.2version>
        dependency>
        


        

        <dependency>
            <groupId>com.anji-plusgroupId>
            <artifactId>captchaartifactId>
            <version>1.2.8version>
        dependency>
        

        

        
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poiartifactId>
            <version>4.1.0version>
        dependency>

        
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poi-ooxmlartifactId>
            <version>4.1.0version>
        dependency>

        
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poi-ooxml-schemasartifactId>
            <version>4.1.0version>
        dependency>

        
        
        <dependency>
            <groupId>com.alibabagroupId>
            <artifactId>fastjsonartifactId>
            <version>1.2.83version>
        dependency>
        
        
        
        <dependency>
            <groupId>com.google.zxinggroupId>
            <artifactId>coreartifactId>
            <version>3.4.1version>
        dependency>
        

        
        <dependency>
            <groupId>com.jfinalgroupId>
            <artifactId>jfinalartifactId>
            <version>4.9.05version>
        dependency>

        
        <dependency>
            <groupId>com.jfinalgroupId>
            <artifactId>jfinal-undertowartifactId>
            <version>2.2version>
        dependency>

        
        <dependency>
            <groupId>com.jfinalgroupId>
            <artifactId>cosartifactId>
            <version>2020.4version>
        dependency>

        
        <dependency>
            <groupId>junitgroupId>
            <artifactId>junitartifactId>
            <version>3.8.1version>
            <scope>testscope>
        dependency>

        
        
        <dependency>
            <groupId>io.undertowgroupId>
            <artifactId>undertow-websockets-jsrartifactId>
            <version>2.2.3.Finalversion>
        dependency>
        


        
        <dependency>
            <groupId>org.slf4jgroupId>
            <artifactId>slf4j-apiartifactId>
            <version>1.7.25version>
        dependency>
        
        <dependency>
            <groupId>org.apache.logging.log4jgroupId>
            <artifactId>log4j-slf4j-implartifactId>
            <version>2.9.1version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-apiartifactId>
                    <groupId>org.slf4jgroupId>
                exclusion>
            exclusions>
        dependency>
        
        <dependency>
            <groupId>org.apache.logging.log4jgroupId>
            <artifactId>log4j-apiartifactId>
            <version>2.9.1version>
        dependency>
        <dependency>
            <groupId>org.apache.logging.log4jgroupId>
            <artifactId>log4j-coreartifactId>
            <version>2.9.1version>
        dependency>


        

        
        <dependency>
            <groupId>mysqlgroupId>
            <artifactId>mysql-connector-javaartifactId>
            <version>8.0.22version>
        dependency>

        
        <dependency>
            <groupId>com.alibabagroupId>
            <artifactId>druidartifactId>
            <version>1.0.29version>
        dependency>

    dependencies>

    <build>


        
        <resources>
            
            <resource>
                <directory>src/main/javadirectory>
                <includes>
                    
                    <include>**/*.sqlinclude>
                includes>
            resource>

            
            <resource>
                <directory>src/main/resourcesdirectory>
            resource>
        resources>



        <plugins>
            <plugin>
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-compiler-pluginartifactId>
                <version>3.6.1version>
                <configuration>
                    <source>11source>
                    <target>11target>
                    <encoding>UTF-8encoding>
                    
                    <compilerArgument>-parameterscompilerArgument>
                    <compilerArguments><verbose />compilerArguments>
                configuration>
            plugin>

            
            <plugin>
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-jar-pluginartifactId>
                <version>2.6version>
                <configuration>
                    <excludes>
                        
                        <exclude>*.*exclude>
                    excludes>
                configuration>
            plugin>

            
            <plugin>
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-assembly-pluginartifactId>
                <version>3.1.0version>
                <executions>
                    <execution>
                        <id>make-assemblyid>
                        <phase>packagephase>
                        <goals>
                            <goal>singlegoal>
                        goals>

                        <configuration>
                            
                            <finalName>${project.artifactId}finalName>
                            
                            <recompressZippedFiles>falserecompressZippedFiles>
                            
                            <appendAssemblyId>trueappendAssemblyId>
                            
                            <descriptors>
                                <descriptor>package.xmldescriptor>
                            descriptors>
                            
                            <outputDirectory>${project.build.directory}/outputDirectory>
                        configuration>
                    execution>
                executions>
            plugin>


        plugins>
    build>

project>




Index 1 out of bounds for length 1这个错误是前面的错误java.lang.ExceptionInInitializerError引起的,这个错误指示初始化异常和空指针错误,请检查mybatis的配置文件是否有错,检查是否放行静态资源,点击maven的Lifecycle中clean然后检查是否出现pom中配置问题。望采纳,亲!!

程序可以正常调试运行吗?

原因:java.lang.ArrayIndexOutOfBoundsException:索引1超出长度1的界限
[警告]注入时出错:org.codehaus.plexus.archiver.jar.JarArchiver

解题思路:更改jdk版本
File--Project Structure...--Project Settings--Project--Project SDK

修改成JDK1.8,可以打包,但是程序报错。还是得用jdk11.,换回来还是报这个错

这个错误的意思是,你试图访问数组的第 1 个元素,但是数组的长度只有 1。通常会在代码中使用下标来访问数组中的元素,如 array[1]。如果数组的长度小于下标,就会抛出这个异常。

解决方法可能有很多种,但是要解决这个问题,你需要确保数组的下标不会超出它的范围。这可以通过检查数组的长度来实现。例如,你可以使用以下代码来避免上述错误:

if (index < array.length) {
  // 访问数组的元素
} else {
  // 下标越界
}

如果你不知道数组的长度是多少,你可以使用 array.length 来获取它的长度。

可以通过判断来过滤掉,比如Index
还有就是可以在使用的时候处理掉异常。但还是过滤比较好,异常最好不要用于逻辑本身。