【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE

这篇具有很好参考价值的文章主要介绍了【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🧑‍💻作者名称:DaenCode
🎤作者简介:CSDN实力新星,后端开发两年经验,曾担任甲方技术代表,业余独自创办智源恩创网络科技工作室。会点点Java相关技术栈、帆软报表、低代码平台快速开发。技术尚浅,闭关学习中······
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:工具合集


【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE,工具合集,java,python,开发语言


专栏推荐

  • 专门为Redis入门打造的专栏,包含Redis基础知识、基础命令、五大数据类型实战场景、key删除策略、内存淘汰机制、持久化机制、哨兵模式、主从复制、分布式锁等等内容。链接>>>>>>>>>《Redis从头学》
  • SpringBoot实战相关专栏,包含SpringBoot过滤器、拦截器、AOP实现日志、整合Freemaker、整合Redis等等实战相关内容,多篇文章登入全站热榜、领域热榜、被技术社区收录。链接>>>>>>《SpringBoot实战》

🌟前言

在学习或者工作中,可能会使用到多个版本的JDK,每次修改环境变量都很麻烦。因此,在这里我现学现卖,使用Python结合bat脚本,通过命令实现了一个多版本JDK切换的小工具。

多版本JDK管理工具也有开源的JENV、SDKMAN等。但还是感觉自己写的顺手一点并且功能也没有冗余,还可以学习Python知识。


🌟效果预览

【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE,工具合集,java,python,开发语言


🌟具体实现

思路分析

  1. 通过Python中的subprocess,调用bat命令中的setx命令来修改系统的环境变量。
  2. 通过引入配置文件的方式,实现JDK版本路径的统一管理。
  3. 通过命令来具体切换相应的JDK版本。

核心代码

import subprocess
def switch_jdk():
    print("Command List")
    print("switch [version] --切换jdk")
    print("jdk list --jdk列表")
    print("exit")
    while True:
        subprocess.call("cls", shell=True)
        command = input("请输入指令:")
        version = command.split()[1]
        #解析用户输入的指令,获得将要切换的版本号
        if command==f"switch {version}":
            jdk_path = getJdkPath(version)
            subprocess.run(['setx', 'JAVA_HOME', jdk_path, '/M'], shell=True, check=True)
            print(f"切换JDK_{version}成功!")
            input("按任意键继续...")
        elif command == "jdk list":
            obtainJdkList()
        elif command == "exit":
            break
        else:
            print("无效的选项,请重新选择!")
            input("按任意键继续...")
            continue

#读取配置文件
def readFileContent():
    # 读取jdk配置路径
    try:
        # 读取jdk配置路径
        with open("jdk.conf", 'r', encoding="UTF-8") as file:
            content = file.read()
            return content
    except FileNotFoundError:
        print("文件不存在")
    except IOError:
        print("文件读取错误")
#获取jdk列表
def obtainJdkList():
    content=readFileContent()
    lines = content.split("\n")
    for line in lines:
        if "=" in line:
            key = line.split("=")[0]
            print(key)
def getJdkPath(version):
    try:
        content=readFileContent()
        # 分割文件内容为每一行,并遍历查找指定版本的路径
        lines = content.split("\n")
        for line in lines:
            if "=" in line:
                key, value = line.split("=")
                if key == f"JDK_{version}":
                    return value
    except FileNotFoundError:
        print("文件不存在")
        return None
    except IOError:
        print("文件读取错误")
        return None

switch_jdk()

JDK配置文件:用于存放当前电脑中已经安装的JDK路径。格式JDK_版本号=路径
【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE,工具合集,java,python,开发语言


🌟使用步骤

1.下载本文压缩包。
2.解压完成后,进入到Daen-JDKMAN文件夹,找到jdk.conf文件。将本地电脑中的JDK安装目录配置到配置jdk.conf文件中。

JDK_{version}=你的安装路径

3.操作命令现在有两个,如下:

  • jdk list-查看当前jdk列表
  • switch {version}-切换至目标jdk。注意version为配置文件中的JDK_{version}。比如说配置文件中配置的是JDK_1.8.131=你的路径,则执行命令switch 1.8.131切换至目标JDK。

4.另外需要注意:如果提示错误,需要以管理员身份运行Pycharm或者Daen-JDKMAN.exe


🌟写在最后

有关于Python实现JDK多版本切换管理工具到此就结束了。感谢大家的阅读,希望大家在评论区对此部分内容散发讨论,便于学到更多的知识。

最后,创作不易,请尊重原创!!!


【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE,工具合集,java,python,开发语言文章来源地址https://www.toymoban.com/news/detail-728722.html

到了这里,关于【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 版本管理|Git -目前最好的版本管理工具

    在软件开发中,版本通常指的是代码或项目的一个特定状态或发布的一个特定副本。每次对代码或项目进行修改时,开发团队可以选择增加版本号或标记新版本,以便在未来能够准确追踪和识别不同的代码状态。 在项目根目录下运行 tree命令可以查看文件树,版本是文件树在

    2024年04月11日
    浏览(59)
  • Linux:Ubuntu安装firewalld防火墙管理工具【WSL用UFW防火墙管理工具】

    firewalld防火墙是Centos7系统默认的防火墙管理工具,取代了之前的iptables防火墙,也是工作在网络层,属于包过滤防火墙。 firewalld和iptables都是用来管理防火墙的工具(属于用户态)来定义防火墙的各种规则功能,内部结构都指向netfilter网络过滤子系统(属于内核态)来实现包过

    2024年02月06日
    浏览(34)
  • 不同规模的测试团队分别适合哪些测试用例管理工具?测试用例管理工具选型指南

    随着软件系统规模的持续增大,业务复杂度的持续增加,软件测试的复杂度也随之越来越大。软件测试工作的复杂性主要体现在测试用例的编写、维护、执行和管理方面。而创建易于阅读、维护和管理的测试用例能够显著减轻测试工作的复杂性。 本篇文章将较为系统的探讨测

    2024年02月11日
    浏览(35)
  • webshell管理工具-antSword(蚁剑)的安装和管理

    中国蚁剑是一款流行的网络安全工具,它由中国安全研究人员研发,主要用于测试和评估网络的安全性。 蚁剑具有强大的功能,可以用于远程控制和管理服务器,包括文件管理、进程管理、端口扫描、SQL注入、WebShell等功能。它还可以在未授权的情况下访问和操纵目标系统,

    2024年02月16日
    浏览(30)
  • 深度学习管理工具

    https://zhuanlan.zhihu.com/p/363673389 官方文档: https://www.mlflow.org/docs/latest/index.html https://zhuanlan.zhihu.com/p/67173051 在跟踪实验时,通过运行 mlflow ui 后在 http:// localhost:5000 中进行查看。目前没办法打开,也不确定是否将结果上传到mlflow的服务器中。 mlflow 主要有四大功能:Tracking、

    2024年02月11日
    浏览(33)
  • Webshell管理工具

    Webshell是以ASP、PHP、JSP或者CGl等网页文件形式存在的一种代码执行环境,主要用于网站管理、服务器管理、权限管理等操作。 Webshell使用方法简单,只需上传一个代码文件,通过网址访问,便可进行很多日常操作,极大地方便了使用者对网站和服务器的管理。 正因如此,也有

    2024年02月13日
    浏览(32)
  • 缺陷管理工具--Mantis

    目录 1.Mantis 介绍 2.Mantis的搭建和调试 3.mantis管理视图 3.1 用户管理 1、创建新账户 2、编辑用户 3、重设密码 4、模仿用户 5、删除用户 3.2项目管理 创建新项目 2、编辑项目 3、子项目 4、删除(子)项目 5、添加用户至项目 6、从项目中移除用户 7、分类 8、版本(releaseversion

    2024年02月03日
    浏览(32)
  • 应用程序管理工具

    应用程序管理是 DevOps 的重要组成部分。它可以定义为在所有阶段监控和管理软件应用程序的可用性、运行状况、性能和功能的过程,包括规划、设计、构建、测试、部署、维护和更新。这意味着应用程序从概念到停止都受到监控。 管理应用程序可确保业务系统的高效运行、

    2024年02月10日
    浏览(30)
  • KVM管理工具

    KVM的管理工具,一般都对qemu命令进行了封装和功能增强,提供了比原生的qemu命令行更加友好、高效的用户交互接口。 1. libvirt libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和应用程序接口,而且一些常用的虚拟机管理工具(如virsh、virt-install、virt-manager等)和云计

    2024年01月17日
    浏览(30)
  • 配置管理工具-Confd

    1.1 Confd介绍 Confd是一个轻量级的配置管理工具。通过查询后端存储,结合配置模板引擎,保持本地配置最新,同时具备定期探测机制,配置变更自动reload。对应的后端存储可以是etcd,redis、zookeeper等。[1] 通过上面的介绍可以看出,通过confd修改配置的前提是,被修改配置的服

    2024年02月06日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包