How do I run my application as superuser from Eclipse?

后端 未结 9 1594
闹比i
闹比i 2020-11-29 09:35

I\'m running in to an error when I try to run my server application from Eclipse. The error is java.net.BindException: Permission denied. I think this is be

9条回答
  •  南笙
    南笙 (楼主)
    2020-11-29 09:48

    You can follow these steps to compile/debug applications as superuser.

    1. Rename your java-application

      sudo mv /usr/lib/jvm/java-6-openjdk/jre/bin/java /usr/lib/jvm/java-6-openjdk/jre/bin/java.ori

    2. Create following script and store it as /usr/lib/jvm/java-6-openjdk/jre/bin/java

      #!/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
      
    3. Change the permissions to make it executable

      sudo chmod 0755 /usr/lib/jvm/java-6-openjdk/jre/bin/java

    4. Startup eclipse

    5. Go to Window->Preferences->Java->Installed JREs
    6. Duplicate java-6-openjdk to java-6-openjdk-root
    7. Edit JRE and add "--run-as-root" as Default VM Argument

    To run projects as root you need to follow these steps:

    1. Go to Project->Properties->Java Build Path
    2. Double-Click the JRE System Library and choose in Alternate JRE "java-6-openjdk-root"

    Note: The idea is from http://www.eclipse.org/forums/index.php/mv/msg/87353/724852/#msg_724852

提交回复
热议问题