美文网首页
maven命令行下载依赖包&java命令执行class

maven命令行下载依赖包&java命令执行class

作者: 书唐瑞 | 来源:发表于2021-04-13 17:28 被阅读0次

    【场景和需求】
    在Linux系统下, 没有第三方的集成开发工具(如IDEA), 如何下载Jar包, 以及如何运行.java文件

    【解决步骤】
    配置maven环境
    配置Java环境

    如何配置此处就不介绍了, 属于基础操作

    此处以下载netty为例

    在官网 https://mvnrepository.com/ 查找需要下载的依赖包的groupId等, 比如查找到下载4.1.63.Final版本netty

    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>4.1.63.Final</version>
    </dependency>
    

    于是, 使用mvn命令下载

    mvn dependency:get -DremoteRepositories=http://repo1.maven.org/maven2/ -DgroupId=io.netty -DartifactId=netty-all -Dversion=4.1.63.Final  
    

    稍等片刻, 就会下载成功.

    源文件内容

    // Allocator.java
    
    package com.infuq;
    
    import io.netty.buffer.PooledByteBufAllocator;
    
    public class Allocator {
        public static void main(String[] args) {
            PooledByteBufAllocator allocator = PooledByteBufAllocator.DEFAULT;     
            allocator.directBuffer(1014);
            System.out.println("测试分配器");
        }
    }
    
    

    目录结构如下

    图片.png

    编译Java源文件

    // Linux系统
    javac -d . -classpath ".:./lib/*"  Allocator.java
    
    // Windows系统
    javac -d . -classpath ".;./lib/*"  Allocator.java
    

    我是把上一步下载的jar包拷贝到了lib目录下

    编译之后的目录结构

    图片.png

    执行

    // Linux系统
    java -classpath ".:./lib/*" com.infuq.Allocator
    
    // Windows系统
    java -classpath ".;./lib/*" com.infuq.Allocator
    
    图片.png

    这里需要说明一点的是, 在使用javac和java命令的时候, 在指定-classpath, 如果是Linux系统, 那么使用:分隔目录, 如果是Windows系统, 那么使用;分隔目录.

    相关文章

      网友评论

          本文标题:maven命令行下载依赖包&java命令执行class

          本文链接:https://www.haomeiwen.com/subject/qgyclltx.html