在我的项目中,我有一个特殊的 JSP,它在出现异常时显示异常堆栈跟踪。
有没有办法使用 URL 处理程序或其他可以让 Eclipse 打开文件的方法?也许与xdg-open
?
我在 Kubuntu Linux 上使用 Eclipse 4.3。
我最终得到了这个解决方案:
编辑xdebug.ini
(它应该在某个地方/etc/php/7.0/mods-available/xdebug.ini
),添加:
xdebug.file_link_format="xdebug://%f(%l)"
重新启动您的服务器或 php-fpm。对于 Ubuntu 上的 Apache,请使用sudo service apache2 restart
.
创建eclipse-launch.sh
. 它旨在解析 URL 并将文件传递给 Eclipse。你可以随意命名并放在任何你想要的地方,我已经把它放在了 ecrise 目录中。请务必替换/home/user
为您的实际主目录和path="..."
实际的 Eclipse 路径:
#! /bin/bash
arg=$1
path="/home/user/eclipse/eclipse-neon/"
# file name directly followed by a line number in parenthesis
regex="//([^(]*)\(([0-9]+)\)"
if [[ $arg =~ $regex ]]
then
file=${BASH_REMATCH[1]}
line=${BASH_REMATCH[2]}
$path/eclipse --launcher.openFile "$file"+"$line"
else
msg="Unsupported URL: $arg"
zenity --info --text="$msg"
# alternatives:
# notify-send "$msg" # another notification program
# $path/eclipse # just run eclipse
fi
在此处阅读有关 Eclipse 命令行选项的更多信息:http: //help.eclipse.org/mars/index.jsp ?topic=/org.eclipse.platform.doc.isv/guide/product_open_file.htm
赋予文件可执行权限:chmod +a eclipse-launch.sh
创建xdebug.desktop
于~/.local/share/applications/
. 它将被使用xdg-open
(Chrome 默认使用 xdg-open)。
[Desktop Entry]
Comment=
Exec=/home/user/eclipse/eclipse-neon/eclipse-launch.sh "%u"
Icon=/home/user/eclipse/eclipse-neon/eclipse/icon.xpm
Name=Eclipse xdebug Launch
NoDisplay=false
StartupNotify=true
Terminal=0
TerminalOptions=
Type=Application
MimeType=x-scheme-handler/xdebug;
运行xdg-mime default xdebug.desktop x-scheme-handler/xdebug
。这应该~.local/share/applications/mimeapps.list
向[Default Applications]
部分添加一个条目。条目本身应该看起来像x-scheme-handler/xdebug=xdebug.desktop
对于 Firefox,请遵循此处的说明:https ://xdebug.org/docs/all_settings#file_link_format
about:config
network.protocol-handler.expose.xdebug
并将其设置为false