Charles 代理在加载工具时冻结

rad*_*n77 5 ubuntu proxy charles-proxy

我已经在我的 Ubuntu 机器上安装了 Charles 代理。

当它启动时,它会停留在启动窗口(即带有徽标和应用程序名称的窗口)。底部写着“正在加载工具”。

就卡在这上面了。并且打不开。

我该怎么做才能阻止它卡住以便我可以使用 GUI?

Daf*_*Cao 6

来自评论:charles3 需要 Java 8。

我通过执行以下操作修复了它(Ubuntu 18,Charles 通过安装apt):

sudo apt update
sudo apt install openjdk-8-jre
sudo nano /usr/bin/charles3
Run Code Online (Sandbox Code Playgroud)

编辑文件,在前面添加 3 行# Launch Charles

JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
JRE_HOME="$JAVA_HOME/jre"
JAVA="$JAVA_HOME/bin/java"
Run Code Online (Sandbox Code Playgroud)

编辑后该文件应如下所示:

#!/bin/sh
######################################################################
# Charles Proxy startup script
#


# Find Charles lib directory
if [ -z "$CHARLES_LIB"]; then
    CHARLES_LIB="$(dirname "$(readlink -f "$0")")"/../lib
    if [ ! -f "$CHARLES_LIB/charles.jar" ]; then
        CHARLES_LIB="/usr/lib/charles-proxy3"
    fi
fi

if [ ! -f "$CHARLES_LIB/charles.jar" ]; then
    echo >&2 "Charles lib directory not found. Looking in $CHARLES_LIB."
    exit 1
fi

# Find Java binary
if [ -z "$JAVA_HOME" -a -z "$JRE_HOME" ]; then
    hash java 2>^- || { echo >&2 "Charles couldn't start: java not found. Please install java to use Charles."; exit 1; }
    JAVA=java
elif [ ! -z "$JAVA_HOME" ]; then
    JAVA="$JAVA_HOME/bin/java"
else
    JAVA="$JRE_HOME/bin/java"
fi

# Edit: Use Java 8
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
JRE_HOME="$JAVA_HOME/jre"
JAVA="$JAVA_HOME/bin/java"

# Launch Charles
$JAVA -Xmx256M -Dcharles.config="~/.charles3.config" -jar $CHARLES_LIB/charles.jar $*
Run Code Online (Sandbox Code Playgroud)