Ron*_*ld 25 java eclipse ssl sudo client-server
当我尝试从Eclipse运行我的服务器应用程序时,我遇到了错误.错误是java.net.BindException:权限被拒绝.我想这是因为我使用端口443来建立SSL连接.如果我使用java和sudo在命令行上运行我的代码,我可以解决这个问题.有没有办法设置Eclipse,以便当我点击运行按钮时,我的应用程序是用sudo执行的?
red*_*moc 15
您可以按照以下步骤以超级用户身份编译/调试应用程序.
重命名您的java应用程序
sudo mv/usr/lib/jvm/java-6-openjdk/jre/bin/java /usr/lib/jvm/java-6-openjdk/jre/bin/java.ori
创建以下脚本并将其存储为/ usr/lib/jvm/java-6-openjdk/jre/bin/java
Run Code Online (Sandbox Code Playgroud)#!/bin/bash # file: /usr/lib/jvm/java-6-openjdk/jre/bin/java # descr: Starter for jdk. Runs jdk as root when # cmd-line-arg "--run-as-root" is specified. # jre="/usr/lib/jvm/java-6-openjdk/jre/bin/java.ori" run_as_root=false args= # Filter command-line argument for arg in "$@" do case "$arg" in --run-as-root) run_as_root=true ;; *) args="$args $arg" ;; esac done # Remove leading whitespaces args=$(echo $args | sed -e 's/^[ \t]*//') if $run_as_root then echo "WARNING: Running as root!" gksu "$jre $args" else $jre $args fi
更改权限以使其可执行
sudo chmod 0755/usr/lib/jvm/java-6-openjdk/jre/bin/java
启动日食
要以root身份运行项目,您需要执行以下步骤:
注意:这个想法来自http://www.eclipse.org/forums/index.php/mv/msg/87353/724852/#msg_724852
如果您使用外部工具(运行菜单/外部工具或工具栏上运行/调试图标旁边的图标),您可以使用任何脚本或您喜欢的任何内容。这些脚本可能会给您更高的权限,或者其他什么。
另一方面,通过这种方式调试应用程序可能会变得非常困难,因为“运行”命令和“调试”命令都不与此外部工具配置关联。也许可以连接应用程序的 Eclipse 调试器,但我不知道这是怎么可能的。