在linux服务器上运行java程序

在linux服务器上运行java程序方式:

1.直接通过javac xxx.java运行java文件,在java xxx运行.class文件
2.利用java -cp .:/xxx/xxx/xxx/xxx.jar:/xxx/xxx/xxx/xxx.jar /xxx/xxx/xxx.java 可以获取到一个关联了依赖包的.class文件
3.打jar包,利用java -cp xxx.jar Test,执行jar包的Test类
 

采用方式2时,我采坑了报错 A JNI error has occurred, please check your installation and try again
   Excepetion in thread "main" java.lang.NoClassDefFoundError:com/jcraft/jsch/SftpException

原因:执行的java文件和外部依赖jar关联失败了,

解决方案:后面我采用了方式3,直接打jar包,jar包中需要把依赖包也打上打jar包的方式可以自行百度,

               我采用的maven,在pom.xml中加上下面的依赖即可,打好包之后,将jar包放到服务器,在当前目录执行java -cp xxx.jar Test 命令(注意jar包路径和当前执行命令的路劲)

<build>
    <plugins>

        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <configuration>
                <appendAssemblyId>false</appendAssemblyId>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
                <archive>
                    <manifest>
                        <!-- 此处指定main方法入口的class -->
                        <mainClass>com.xxx.uploadFile</mainClass>
                    </manifest>
                </archive>
                </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>assembly</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

    </plugins>
</build>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值