R环境配置 以及Debug方法 (VSCode, conda, 远程R)

生物信息学中的R环境配置 以及Debug方法

开始设置

1、建议使用VSCode + conda + 远程R

2、 VSCode配置

安装插件
bash 复制代码
Remote-SSH
R
R Debugger
安装好插件后,远程设置
链接成功后,设置项目

然后点击OK, 就可以了

3、 linux conda 和 远程R配置

确保有conda

安装R:

bash 复制代码
# 首先添加必要的 channels
conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge

#更新conda
conda update conda

# 然后创建环境
conda create -n r_bioinfo -c conda-forge r-base=4.3

# 激活环境
conda activate r_bioinfo

缺少依赖,则安装(必要项):

bash 复制代码
conda install -c conda-forge gcc
conda install -c conda-forge gxx
conda install -c conda-forge gfortran
conda install -c conda-forge make
conda install -c conda-forge zlib
conda install -c conda-forge libxml2
conda install -c conda-forge libcurl
conda install -c conda-forge openssl
conda install -c conda-forge hdf5
conda install -c conda-forge pcre2
conda install -c conda-forge freetype
conda install -c conda-forge libpng
conda install -c conda-forge libtiff
conda install -c conda-forge jpeg
conda install -c conda-forge zlib
conda install -c conda-forge libxml2
conda install -c conda-forge curl
conda install -c conda-forge openssl
conda install -c conda-forge r-biocmanager

安装远程需要的包:

bash 复制代码
# 安装基础包
conda install -c conda-forge r-jsonlite
conda install -c conda-forge r-rlang

# 安装调试器相关包
conda install -c conda-forge r-devtools
c 复制代码
# 安装r远程调试包
library(devtools)
install_github("ManuelHentschel/vscDebugger")

# 测试
library(vscDebugger)

# 其它包(可选)
if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install(version = "3.18")
BiocManager::install(c("rhdf5", "SingleCellExperiment", "DESeq2"))

4、VScode 远程访问R环境

需要进行完成第2步,就是可以远程访问文件了

下面配置远程R
bash 复制代码
# 首先找到conda 安装的R的位置

conda info --envs

然后在vscode里编辑settings.json:

bash 复制代码
# ctrl+shift+P 打开控制行
>Preferences: Open User Settings (JSON)

添加:

bash 复制代码
{
		# 这里可能会有其它配置
		# 不要删除

        // 添加 R 相关配置
        "r.rpath.linux": "/home/xxx/anaconda3/envs/r_bioinfo/bin/R", # xxx 换成你的R目录
        "r.lsp.debug": true,
        "r.debugger.timeouts": {
            "startup": 8000
        },
        "r.libPaths": [
            "/home/xxx/anaconda3/envs/r_bioinfo/lib/R/library"  # xxx 换成你的R目录
        ],
        "r.alwaysUseActiveTerminal": true,
        "r.sessionWatcher": true,
        "r.bracketedPaste": true,
        "r.terminalPath": "/home/xxx/anaconda3/envs/r_bioinfo/bin/R",  # xxx 换成你的R目录
        "r.workspaceViewer.watch": true,
        "r.plot.useHttpgd": true
}

编辑Launch.json

bash 复制代码
# ctrl+shift+P 打开控制行
>Open Launch.json
bash 复制代码
    "version": "0.2.0",
    "configurations": [
       		### 其它已存在的配置
        
            {
                "type": "R-Debugger",
                "name": "Debug R-File",
                "request": "launch",
                "debugMode": "file",
                "workingDirectory": "${workspaceFolder}",
                "file": "${file}",
                "rpath": "/home/liuyinbo/anaconda3/envs/r_bioinfo/bin/R",
                "env": {
                    "R_LIBS_USER": "/home/liuyinbo/anaconda3/envs/r_bioinfo/lib/R/library"
                }
            },
    ]
}

5、开始Debug

新建个R文件(注意,这已经是链接到远程服务器了)
先测试能否逐行运行

激活环境

逐行运行

如果以上都成功了,再进行下一步。

开始debug R
R debug的命令(必须看)

由于vscode没有按钮形式,所以 只能用快捷键

复制代码
F5          : 开始调试/继续执行
Shift + F5  : 停止调试
Ctrl + F5   : 运行(不调试)
F
10         : 单步跳过(Step Over)- 不进入函数内部
F11         : 单步进入(Step Into)- 进入函数内部
Shift + F11 : 单步跳出(Step Out)- 从当前函数返回

F9          : 切换断点
Ctrl + F9   : 启用/禁用断点
Ctrl + Shift + F9 : 删除所有断点

Ctrl + Shift + D : 打开调试视图
Ctrl + Shift + Y : 打开调试控制台

鼠标悬停在变量上    : 查看变量值
在 Watch 窗口添加   : 持续监视变量

Ctrl + Shift + P : 打开命令面板(可搜索调试相关命令)
Ctrl + ` : 打开/关闭终端
Ctrl + K Ctrl + I : 显示悬停信息

调试时的工作流程:
设置断点(F9)
开始调试(F5)
使用单步调试(F10/F11)
查看变量值
继续或停止调试

在配置过程中遇到的问题

1、远程服务器无法访问

先在其它地方测试服务器可以链接,且网络比较好

2、需要本地ras密钥配置

可以配置文件解决,自行查找

3、配置了settings.json无法使用(右下角会有报错,看下R位置是不对的)

看下是否配置的用户settings或本地空间settings

4、配置launch.json无法使用

同样的看下配置的位置对不对

相关推荐
sunshine22 girl11 小时前
copilot vscode 使用技巧
人工智能·vscode·编辑器
2501_9159090614 小时前
Windows 打开 Xcode 工程,编译调试 Xcode 项目并和 Mac 同事协作
ide·windows·vscode·macos·ios·个人开发·xcode
SoulRoar.1 天前
WSL2 + Conda 环境下MinerU 4.x GPU 服务部署与 systemd 常驻指南
conda·wsl·文档解析·mineru
2501_916007471 天前
Windows OpenSSL 生成 iOS 证书,制作 p12 与描述文件,KXBuild 签名实操
windows·vscode·ios·objective-c·个人开发·swift·敏捷流程
我要见SA姐12 天前
Chrome 内存泄漏诊断指南:从现象定位到根因排查
ide·vscode·python·自动化·编辑器
00后程序员张2 天前
Windows 开发 iOS App 入门,用 SwiftUI 写第一个 iOS App 装到 iPhone
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
Eiceblue3 天前
用 Python 给 Word 文档加水印:文字、图片与批量处理
开发语言·vscode·python·word
2501_915921433 天前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程
Lhan.zzZ3 天前
用 Qt 构建线程安全的通讯静态库:从线程亲和性到完整工程
c++·vscode·qt·tcp/ip·udp
Halo10133 天前
VSCode设置护眼背景色
ide·vscode·编辑器