当前位置: 首页 > news >正文

PyCharm 在 Linux 上的完整安装与使用指南

在这里插入图片描述


PyCharm 在 Linux 上的完整安装与使用指南—目录

  • 一、PyCharm 简介
  • 二、下载与安装
    • 1. 下载 PyCharm
    • 2. 安装前的依赖准备
    • 3. 安装步骤
      • 方法 1:通过 Snap 安装(推荐)
      • 方法 2:手动安装(从官网下载 `.tar.gz` 文件)
      • 方法 3:通过包管理器安装(仅限部分发行版)
  • 三、基础使用指南
    • 1. 首次启动配置
    • 2. 创建第一个项目
    • 3. 运行代码
    • 4. 核心功能
  • 四、进阶功能配置
    • 1. 配置 Python 解释器
    • 2. 安装插件
    • 3. 调试配置
    • 4. 快捷键速查
  • 五、常见问题与解决方法
    • 1. 启动失败或卡顿
    • 2. Python 解释器无法识别
    • 3. 插件冲突
    • 4. 调试断点失效
  • 六、卸载 PyCharm
    • 1. 删除安装目录
    • 2. 清理残留文件
  • 七、高级技巧与工具
    • 1. 远程开发
    • 2. 数据库工具
    • 3. 性能优化
    • 4. 自定义代码模板
  • 八、故障排查工具
    • 1. 查看日志
    • 2. 重置配置
    • 3. 社区支持
  • 九、资源与官方链接


一、PyCharm 简介

PyCharm 是 JetBrains 开发的专业 Python 集成开发环境(IDE),支持 Web 开发(Django、Flask)、数据分析(NumPy、Pandas)、机器学习(TensorFlow、PyTorch)等场景。分为两个版本:
• 社区版(免费):基础 Python 开发功能。
• 专业版(付费):支持数据库、科学计算、Web 框架等高级功能。


二、下载与安装

1. 下载 PyCharm

• 官网地址:https://www.jetbrains.com/pycharm/download
• 选择 Linux 版本:
• 社区版(免费):适合基础开发。
• 专业版(付费):需订阅,支持高级功能(如数据库、Docker 集成)。
• 下载 .tar.gz 文件(通用二进制包)或通过 Snap 安装。

2. 安装前的依赖准备

• 安装 Java 环境(仅专业版需要):

sudo apt install openjdk-17-jdk  # Debian/Ubuntu
sudo dnf install java-17-openjdk-devel  # Fedora/CentOS

• 安装 Python:

sudo apt install python3.11  # Debian/Ubuntu
sudo dnf install python3.11  # Fedora/CentOS

3. 安装步骤

方法 1:通过 Snap 安装(推荐)

sudo snap install pycharm-community --classic  # 社区版
sudo snap install pycharm-professional --classic  # 专业版

方法 2:手动安装(从官网下载 .tar.gz 文件)

  1. 解压文件:
    tar -xvzf pycharm-*.tar.gz -C ~/
    
  2. 移动到安装目录:
    mv ~/pycharm-* ~/pycharm
    
  3. 赋予执行权限:
    chmod +x ~/pycharm/bin/pycharm.sh
    

方法 3:通过包管理器安装(仅限部分发行版)

• Debian/Ubuntu(PPA 方式):

sudo add-apt-repository ppa:linuxuprising/pycharm
sudo apt update && sudo apt install pycharm-community

三、基础使用指南

1. 首次启动配置

  1. 运行 PyCharm:
    ~/pycharm/bin/pycharm.sh  # 手动启动
    
    • 或通过桌面快捷方式启动。
  2. 选择主题:Darcula(深色)或 Light(浅色)。
  3. 配置 Python 解释器:
    • 点击 File > Settings > Project: <项目名> > Python Interpreter
    • 选择系统 Python 路径(如 /usr/bin/python3.11)。

2. 创建第一个项目

  1. 点击 Create New Project
  2. 选择项目模板(如 Pure Python)。
  3. 配置项目名称、路径及 Python 解释器。
  4. 点击 Create,等待项目初始化完成。

3. 运行代码

• 直接运行脚本:右键代码文件 → Run ‘filename’。
• 使用终端:点击底部 Terminal 标签,输入 python script.py

4. 核心功能

• 代码编辑:智能补全、代码重构、实时语法检查。
• 调试工具:断点、变量监视、单步执行。
• 版本控制:内置 Git 集成(提交、拉取、推送)。


四、进阶功能配置

1. 配置 Python 解释器

  1. 打开 SettingsCtrl + Alt + S)。
  2. 进入 Project: <项目名> > Python Interpreter
  3. 选择解释器类型:
    • System Interpreter:使用全局 Python。
    • Virtualenv:创建虚拟环境。
    • Conda:使用 Anaconda/Miniconda 环境。

2. 安装插件

• 推荐插件:
• Material Theme UI:美化界面。
• Rainbow Brackets:彩色括号匹配。
• Python Community Edition(专业版无需安装)。
• 安装方法:
Settings > Plugins → 搜索插件 → 点击 Install。

3. 调试配置

  1. 点击左侧 Run/Debug Configurations 图标(▶️)。
  2. 创建新配置(如 Python 或 Django Server)。
  3. 设置启动文件和环境变量,点击 OK。

4. 快捷键速查

Shift + F10:运行当前脚本。
Shift + F9:调试当前脚本。
Ctrl + G:跳转到指定行。
Ctrl + D:复制当前行。
Ctrl + Alt + L:格式化代码。


五、常见问题与解决方法

1. 启动失败或卡顿

• 问题:启动时报错 No JDK found(专业版)。
解决:确保已安装 JDK 17 并设置 JAVA_HOME

echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64' >> ~/.bashrc
source ~/.bashrc

• 问题:运行缓慢。
解决:禁用不必要的插件(Settings > Plugins)。

2. Python 解释器无法识别

• 问题:终端中 python 命令不可用。
解决:
• 检查 Python 是否添加到系统 PATH(重新安装 Python 并勾选 Add Python to PATH)。
• 手动添加路径到 Environment Variables

3. 插件冲突

• 问题:安装插件后 IDE 功能异常。
解决:
• 进入 Settings > Plugins,禁用冲突插件。
• 删除插件缓存:

 rm -rf ~/.local/share/JetBrains/PyCharm<版本>/plugins/<插件ID>

4. 调试断点失效

• 问题:断点无法触发。
解决:
• 确保代码与调试配置匹配(如正确选择 Python 解释器)。
• 清除断点并重新设置:点击左侧断点列表 → Remove All Breakpoints。


六、卸载 PyCharm

1. 删除安装目录

rm -rf ~/pycharm  # 手动安装版本

2. 清理残留文件

# 删除用户配置和缓存
rm -rf ~/.config/JetBrains/PyCharm*
rm -rf ~/.cache/JetBrains/PyCharm*
rm -rf ~/.local/share/JetBrains/PyCharm*

七、高级技巧与工具

1. 远程开发

• 配置 SSH 解释器:
Settings > Project: <项目名> > Python Interpreter → 点击齿轮图标 → Add → SSH Interpreter。
• 使用 Docker:
配置 Docker 镜像作为开发环境(需安装 Docker Desktop)。

2. 数据库工具

• 专业版功能:
• 内置数据库支持(PostgreSQL、MySQL 等)。
• 右键 SQL 文件 → Run Query 直接执行。

3. 性能优化

• 增加 IDE 内存:
编辑 pycharm.vmoptions(路径:~/.local/share/JetBrains/PyCharm<版本>/bin/pycharm.vmoptions):

-Xms1024m
-Xmx4096m

• 禁用不必要的检查:
Settings > Editor > Inspections → 关闭非必要的代码检查项。

4. 自定义代码模板

• 创建 Live Template:
Settings > Editor > Live Templates → 添加自定义代码片段(如快速生成类或函数)。


八、故障排查工具

1. 查看日志

• IDE 日志路径:
~/.local/share/JetBrains/PyCharm<版本>/log/idea.log
• 终端查看实时日志:

tail -f ~/.local/share/JetBrains/PyCharm<版本>/log/idea.log

2. 重置配置

• 删除配置目录恢复默认设置:

rm -rf ~/.config/JetBrains/PyCharm<版本>

3. 社区支持

• 官方文档:PyCharm Docs
• 社区论坛:JetBrains Support Forum
• GitHub Issues:PyCharm Issues


九、资源与官方链接

  1. 下载页面:PyCharm for Linux
  2. 插件市场:PyCharm Plugins
  3. 官方教程:Get Started with PyCharm

通过以上步骤,您可以在 Linux 上高效使用 PyCharm 进行 Python 开发。建议根据项目需求安装插件并定期更新工具链,以保持最佳开发体验。


相关文章:

PyCharm 在 Linux 上的完整安装与使用指南

PyCharm 在 Linux 上的完整安装与使用指南—目录 一、PyCharm 简介二、下载与安装1. 下载 PyCharm2. 安装前的依赖准备3. 安装步骤方法 1&#xff1a;通过 Snap 安装&#xff08;推荐&#xff09;方法 2&#xff1a;手动安装&#xff08;从官网下载 .tar.gz 文件&#xff09;方…...

强化学习(Reinforcement Learning, RL)​​与​​深度强化学习(Deep Reinforcement Learning, DRL)​​

​​1. 基本概念​​ ​​强化学习&#xff08;RL&#xff09;​​ ​​定义​​&#xff1a;通过试错与环境交互&#xff0c;学习策略以最大化累积奖励的机器学习范式。​​核心思想​​&#xff1a;智能体在环境中执行动作&#xff0c;接收奖励信号并更新策略&#xff0c;最…...

初识Redis · C++客户端set和zset

目录 前言&#xff1a; set sadd sismember smembers spop scard sinter sinterstore zset zadd zrange zcard zrem zrank zscore 前言&#xff1a; 前文我们已经介绍了string list hash在Redis-plus-plus的使用&#xff0c;本文我们开始介绍set和zset在redis-plus-pl…...

平板电脑做欧盟网络安全法案(EU)2022/30

平板电脑做欧盟网络安全法案&#xff08;EU&#xff09;2022/30 平板电脑做EN18031,平板电脑做无障碍法规EU2019/882 欧盟委员会于2022年通过补充授权法案 &#xff08;EU&#xff09; 2022/30&#xff0c;明确要求无线电设备需满足网络安全、隐私保护及反欺诈要求。 新规时间轴…...

GeoJSON 格式详解与使用指南

一、引言 GeoJSON 是一种对各种地理数据结构进行编码的格式&#xff0c;它基于 JavaScript 对象表示法&#xff08;JSON&#xff09;&#xff0c;被广泛应用于地理信息系统&#xff08;GIS&#xff09;、地图应用开发以及地理数据的存储和交换。本文将详细介绍 GeoJSON 的格式…...

JavaScript与TypeScript

TypeScript 和 JavaScript 都是用于构建 Web 应用的编程语言&#xff0c;但它们有着不同的设计目标和特性。 一、JavaScript 1. 定义与特点 动态脚本语言&#xff1a;由 Brendan Eich 在 1995 年创建&#xff0c;最初用于浏览器端的交互逻辑。弱类型/动态类型&#xff1a;变量…...

ArcGIS、ArcMap查看.shp文件时属性表中文乱码

Shapefile(.shp): 根本错误原因&#xff1a; Shapefile 的属性数据 .dbf 是老旧格式&#xff0c;默认不含编码信息 解决方法&#xff1a; 在shapefile文件夹目录上&#xff0c;创建一个同名的.cpg文件&#xff0c;内容"oem" 使用ArcGIS再右键打开属性表&#xff0c;…...

C++学习:六个月从基础到就业——内存管理:自定义内存管理(上篇)

C学习&#xff1a;六个月从基础到就业——内存管理&#xff1a;自定义内存管理&#xff08;上篇&#xff09; 本文是我C学习之旅系列的第二十一篇技术文章&#xff0c;也是第二阶段"C进阶特性"的第六篇&#xff0c;主要介绍C中的自定义内存管理技术&#xff08;上篇&…...

大模型基础

1、提示词 典型构成&#xff1a; - **角色**&#xff1a;给 AI 定义一个最匹配任务的角色&#xff0c;比如&#xff1a;「你是一位软件工程师」「你是一位小学数学老师」 - **指示**&#xff1a;对任务进行描述 - **上下文**&#xff1a;给出与任务相关的其它背景信息&#x…...

TDengine 存储引擎设计

简介 TDengine 的核心竞争力在于其卓越的写入和查询性能。相较于传统的通用型数据库&#xff0c;TDengine 在诞生之初便专注于深入挖掘时序数据场景的独特性。它充分利用了时序数据的时间有序性、连续性和高并发特点&#xff0c;自主研发了一套专为时序数据定制的写入及存储算…...

C++回溯算法详解

文章目录 引言第一题1.1 题目解析1.2 解题思路回溯解法队列解法 1.3 解题代码回溯解法队列解法 引言 回溯算法是一种通过深度优先搜索系统性地遍历问题解空间的算法。它的核心思想是"试错"&#xff1a;逐步构建候选解&#xff0c;当发现当前选择无法得到有效解时&am…...

前端Javascript模块化 CommonJS与ES Module区别

一、模块化规范的演进历程 IIFE(立即执行函数)阶段 早期通过立即执行函数实现模块化,利用函数作用域隔离变量,解决全局命名冲突问题。例如通过(function(){})()包裹代码,形成独立作用域。 CommonJS(Node.js)阶段 CommonJS规范以同步加载为核心,通过require和module.exp…...

问题 | RAIM + LSTM 你怎么看???

github&#xff1a;https://github.com/MichaelBeechan CSDN&#xff1a;https://blog.csdn.net/u011344545 RAIM LSTM import numpy as np import tensorflow as tf from tensorflow.keras.layers import LSTM, Dense# RAIM-LSTM 融合模型 class RAIM_LSTM(tf.keras.Model):d…...

进程与线程:03 用户级线程

多进程与操作系统基础 上一个内容我们讲了多进程图像&#xff0c;强调多进程图像是操作系统最核心的图像。我们还通过Windows任务管理器&#xff0c;实际观察了操作系统里的进程。 进程是操作系统的核心内容&#xff0c;管理好多个进程&#xff0c;就能管理好操作系统和CPU。…...

四种阻抗匹配的方式

一、串联端接方式 即靠近输出端的位置串联一个电阻。 要达到匹配效果&#xff0c;串联电阻和驱动端输出阻抗的总和应等于传输线的特征Z0 二、并联端接方式 并联端接又被称为终端匹配。 要达到阻抗匹配的要求&#xff0c;端接电阻应该和传输线的特征阻抗Z0相等。 三、AC并联端…...

WebRTC通信技术EasyRTC音视频实时通话安全巡检搭建低延迟、高可靠的智能巡检新体系

一、方案背景 在现代安防和工业领域&#xff0c;安全巡检是确保设施正常运行和保障人员安全的关键环节。传统的巡检方式往往依赖人工&#xff0c;效率低下且容易出现遗漏。随着技术的发展&#xff0c;实时通信技术EasyRTC为安全巡检提供了更加高效和智能化的解决方案。 二、方…...

使用json_repair修复大模型的json输出错误

json_repair 有些 LLM 在返回格式正确的 JSON 数据时会有些问题&#xff0c;有时会漏掉括号&#xff0c;有时会在数据中添加一些单词。不至于这种错误每次都要丢弃&#xff0c;再次生成太浪费时间了&#xff0c;因此能修复错误时还是要尽量修复。这就是 json_repair 的主要目的…...

聊透多线程编程-线程互斥与同步-12. C# Monitor类实现线程互斥

目录 一、什么是临界区&#xff1f; 二、Monitor类的用途 三、Monitor的基本用法 四、Monitor的工作原理 五、使用示例1-保护共享变量 解释&#xff1a; 六、使用示例2-线程间信号传递 解释&#xff1a; 七、注意事项 八、总结 在多线程编程中&#xff0c;线程之间的…...

鸿蒙系统的 “成长烦恼“:生态突围与技术迭代的双重挑战

一、应用生态&#xff1a;从 "有没有" 到 "好不好" 的漫长爬坡 作为一款诞生于中美科技博弈背景下的国产操作系统&#xff0c;鸿蒙&#xff08;HarmonyOS&#xff09;自 2019 年发布以来&#xff0c;已在设备装机量上取得突破 —— 截至 2023 年底&#xf…...

ESP8266_ESP32 Smartconfig一键配网功能

目录 SmartConfig一键配网基本原理设备绑定流程 ESP8266/ESP32 SmartConfig配网AT指令配置方式Arduino程序配置方式 总结 SmartConfig一键配网 SmartConfigTM 是由 TI 开发的配网技术&#xff0c;用于将新的 Wi-Fi 设备连接到 Wi-Fi 网络。它使用移动应用程序将无线网凭据从智…...

图解Agent2Agent(A2A)

🧠 向所有学习者致敬! “学习不是装满一桶水,而是点燃一把火。” —— 叶芝 我的博客主页: https://lizheng.blog.csdn.net 🌐 欢迎点击加入AI人工智能社区! 🚀 让我们一起努力,共创AI未来! 🚀 嘿,朋友们!今天咱们来聊聊 Agentic 应用背后的两大神器:A2A 和 …...

Kotlin基础(①)

open 关键字&#xff1a;打破 Kotlin 的“默认封闭”规则 // 基类必须加 open 才能被继承 open class Animal {// 方法也要加 open 才能被子类重写open fun makeSound() {println("Some sound")} }class Dog : Animal() {override fun makeSound() {println("W…...

Android Kotlin+Compose首个应用

本教程将创建一个简单的基于 Kotlin 语言的 APP&#xff0c;并使用 Compose 来管理 UI。 创建一个基于 Kotlin 的Android 应用 打开 Android Studio&#xff0c;选择New Project来创建一个应用&#xff0c;然后在Phone and Tablet选项卡&#xff0c;选择 Empty Activity&…...

《AI大模型应知应会100篇》第30篇:大模型进行数据分析的方法与局限:从实战到边界探索

大模型进行数据分析的方法与局限&#xff1a;从实战到边界探索 摘要 在金融分析师用自然语言询问季度财报趋势&#xff0c;电商平台通过对话生成用户画像的今天&#xff0c;大模型正在重塑数据分析的协作模式。本文通过实战代码与行业案例&#xff0c;揭示大模型如何成为数据…...

基于SSM+Vue的社群交流市场服务平台【提供源码+论文1.5W字+答辩PPT+项目部署】

作者简介&#xff1a;✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容&#xff1a;&#x1f31f;Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能…...

Python Cookbook-6.7 有命名子项的元组

任务 Python 元组可以很方便地被用来将信息分组&#xff0c;但是访问每个子项都需要使用数字索引&#xff0c;所以这种用法有点不便。你希望能够创建一种可以通过名字属性访问的元组。 解决方案 工厂函数是生成符合要求的元组的子类的最简单方法: #若在2.4中可使用operator…...

软件功能测试和非功能测试有什么区别和联系?

软件测试是保障软件质量的核心环节&#xff0c;而软件功能测试和非功能测试作为测试领域的两大重要组成部分&#xff0c;承担着不同但又相互关联的职责。 软件功能测试指的是通过验证软件系统的各项功能是否按照需求规格说明书来正确实现&#xff0c;确保软件的功能和业务流程…...

Java Lambda表达式指南

一、Lambda表达式基础 1. 什么是Lambda表达式&#xff1f; 匿名函数&#xff1a;没有名称的函数函数式编程&#xff1a;可作为参数传递的代码块简洁语法&#xff1a;替代匿名内部类的更紧凑写法 2. 基本语法 (parameters) -> expression 或 (parameters) -> { statem…...

K8s使用LIRA插件更新安全组交互流程

在Kubernetes集群中&#xff0c;当使用Lira作为CNI&#xff08;容器网络接口&#xff09;插件&#xff0c;并且需要更新ConfigMap中的安全组&#xff08;&#xff09;securityGroups字段&#xff09;时&#xff0c;实际上你是在配置与Pod网络相关的高级选项。Lira作为一种支持P…...

利用TCP+多进程技术实现私聊信息

服务器&#xff1a; import socket from multiprocessing import Process from threading import Threaduser_dic {}def send_recv(client_conn, client_addr):while 1:# 接收客户端发送的消息res client_conn.recv(1024).decode("utf-8")print("客户端发送…...

【图问答】DeepSeek-VL 论文阅读笔记

《DeepSeek-VL: Towards Real-World Vision-Language Understanding》 1. 摘要/引言 基于图片问答&#xff08;Visual Question Answering&#xff0c;VQA&#xff09;的任务 2. 模型结构 和 三段式训练 1&#xff09;使用 SigLIP 和 SAM 作为混合的vision encoder&#xf…...

深度学习预训练和微调

目录 1. 预训练&#xff08;Pre-training&#xff09;是什么&#xff1f; 2. 微调&#xff08;Fine-tuning&#xff09;是什么&#xff1f; 3. 预训练和微调的对象 4. 特征提取如何实现&#xff1f; 预训练阶段&#xff1a; 微调阶段&#xff1a; 5. 这样做的作用和意义 …...

面经-浏览器/网络/HTML/CSS

目录 1. http缓存机制 缓存机制 流程概述 2. 常见的http状态码 1xx&#xff08;信息性状态码&#xff09; 3xx&#xff08;重定向状态码&#xff09; 4xx&#xff08;客户端错误状态码&#xff09; 5xx&#xff08;服务器错误状态码&#xff09; 3. http和https的区别…...

轻松实现文件批量命名的实用工具

软件介绍 今天要给大家介绍一款超实用的批量文件重命名小工具&#xff0c;它完全可以称得上是同类产品的绝佳替代品。 软件特性 这小工具叫 MiniRenamer&#xff0c;身材十分苗条&#xff0c;大小还不到 300KB 呢。解压完后&#xff0c;不用任何复杂操作&#xff0c;直接就能…...

基于Redis实现高并发抢券系统的数据同步方案详解

在高并发抢券系统中&#xff0c;我们通常会将用户的抢券结果优先写入 Redis&#xff0c;以保证系统响应速度和并发处理能力。但数据的最终一致性要求我们必须将这些结果最终同步到 MySQL 的持久化库中。本文将详细介绍一种基于线程池 Redis Hash 扫描的异步数据同步方案&#…...

【Pandas】pandas DataFrame sub

Pandas2.2 DataFrame Binary operator functions 方法描述DataFrame.add(other)用于执行 DataFrame 与另一个对象&#xff08;如 DataFrame、Series 或标量&#xff09;的逐元素加法操作DataFrame.add(other[, axis, level, fill_value])用于执行 DataFrame 与另一个对象&…...

4.21总结

正式开始设计和实现前端页面 1.目标效果 2.今日实现内容 在前端编写了相应的store,api,utils文件&#xff0c;以便后续的组件复用 2.编写了相应的css文件...

VLA论文精读(十四)PointVLA: Injecting the 3D World into Vision-Language-Action Models

这篇论文瞄准的是2025年在arxiv上发布的一篇VLA领域论文。这篇文章最大的创新点在于将3D点云信息作为补充条件送入模型&#xff0c;而不是DP3一样只用纯3D数据从头训练模型&#xff0c;按照作者的说法这样可以在保留模型原有2D解释能力的同时添加了其3D能力&#xff0c;并且可以…...

BEVDet4D: Exploit Temporal Cues in Multi-camera 3D Object Detection

背景 对于现有的BEVDet方法,它对于速度的预测误差要高于基于点云的方法,对于像速度这种与时间有关的属性,仅靠单帧数据很难预测好。因此本文提出了BEVDet4D,旨在获取时间维度上的丰富信息。它是在BEVDet的基础上进行拓展,保留了之前帧的BEV特征,并将其进行空间对齐后与当…...

Java学习路线--自用--带链接

1.Java基础 黑马&#xff1a;黑马程序员Java零基础视频教程_下部 2.MySQL 尚硅谷&#xff1a;MySQL数据库入门到大牛&#xff0c;mysql安装到优化&#xff0c;百科全书级&#xff0c;全网天花板 3.Redis 黑马&#xff1a;黑马程序员Redis入门到实战教程&#xff0c;深度透…...

【锂电池容量特征提取】NASA数据集锂电池容量特征提取(Matlab完整源码)

目录 效果一览程序获取程序内容代码分享研究内容基于NASA数据集的锂电池容量特征提取方法研究摘要关键词 1. 引言1.1 研究背景1.2 研究意义1.3 研究目的 2. 文献综述2.1 锂电池容量特征提取相关理论基础2.2 国内外研究现状 3. NASA数据集介绍3.1 数据集来源与构成3.2 数据采集方…...

vue2使用markdown-it解析markdown文本

1.安装markdown-it npm instal markdown-it 2. 页面中引用 import MarkdownIt from markdown-it ...const mdRender MarkdownIt(); ...data {return {md: new MarkdownIt(),} } 3. html <p v-html"md.render(conetnt)" ></p>...

云服务器怎么选择防御最合适

用户问的是怎么选择云服务器的防御最合适。这个问题看起来是关于云安全方面的&#xff0c;尤其是如何配置防御措施来保护云服务器免受攻击。首先&#xff0c;我需要理解用户的需求可能是什么。他们可能是一个企业或者个人用户&#xff0c;正在考虑上云&#xff0c;但担心安全问…...

ubuntu20.04安装安装x11vnc服务基于gdm3或lightdm这两种主流的显示管理器。

前言&#xff1a;在服务端安装vnc服务&#xff0c;可以方便的远程操作服务器&#xff0c;而不用非要插上显示器才行。所以在服务器上安装vnc是很重要的。在ubuntu20中&#xff0c;默认的显示管理器已经变为gdm3&#xff0c;它可以带来与 GNOME 无缝衔接的体验&#xff0c;强调功…...

汽车动力转向器落锤冲击试验台

汽车动力转向器落锤冲击试验台依据标准&#xff1a;QC/T29096-1992《汽车转向器总成台架试验方法》&#xff1b;以工控机为控制核心&#xff0c;采用步进电机举升机构&#xff0c;高精度的光电编码器为位置反馈元件。能够自动完成落锤的起吊、精确的定位、释放、冲击过程的测量…...

Mybatis延迟加载、懒加载、二级缓存

DAY22.2 Java核心基础 Mybatis 延迟加载、懒加载 提高程序运行效率的技术 延迟加载&#xff0c;也叫惰性加载或者懒加载 延迟加载如何提升程序的运行效率&#xff1f; 持久层操作有一个原则&#xff1a;Java 程序和数据库交互频率越低越好 Java 程序每次和数据库进行交互…...

Linux网络编程 多进程UDP聊天室:共享内存与多进程间通信实战解析

知识点1【项目功能介绍】 今天我们写一个 UDP &#xff0c;多进程与不同进程间通信的综合练习 我这里说一下 这个项目的功能&#xff1a; 1、群发&#xff08;有设备个数的限制&#xff09;&#xff1a;发送数据&#xff0c;其他所有客户端都要受到数据 2、其他客户端 都 可…...

网络结构及安全科普

文章目录 终端联网网络硬件基础网络协议示例&#xff1a;用户访问网页 OSI七层模型网络攻击&#xff08;Hack&#xff09;网络攻击的主要类别&#xff08;一&#xff09;按攻击目标分类&#xff08;二&#xff09;按攻击技术分类 网络安全防御 典型攻击案例相关名词介绍网络连接…...

CAD文件如何导入BigemapPro

问题描述 在使用 BigemapPro 加载 CAD 文件的过程中&#xff0c;会出现两种不同的情况&#xff1a;部分文件能够被软件自动识别投影并顺利加载&#xff1b;而另一部分文件则无法自动识别投影&#xff0c;需要手动干预才能准确加载到影像上。下面为您详细介绍这两种情况的具体操…...

Spring-AOP分析

Spring分析-AOP 1.案例引入 在上一篇文章中&#xff0c;【Spring–IOC】【https://www.cnblogs.com/jackjavacpp/p/18829545】&#xff0c;我们了解到了IOC容器的创建过程&#xff0c;在文末也提到了AOP相关&#xff0c;但是没有作细致分析&#xff0c;这篇文章就结合示例&am…...