如何从 Java 文件 Apple.java 中获取编译为可执行文件 /usr/bin/demo 的 Go 代码的绝对路径?

如何从 java 文件 apple.java 中获取编译为可执行文件 /usr/bin/demo 的 go 代码的绝对路径?

从 apple.java 中获取 go 可执行文件的绝对路径

问题:
如何从 java 文件 apple.java 中获取编译为可执行文件 /usr/bin/demo 的 go 代码的绝对路径?

go 代码:

package main

import "fmt"

func main() {
    fmt.println("9527")
}

回答:

为了从 apple.java 中获取 go 可执行文件的绝对路径,您可以使用以下步骤:

  • 在 go 代码中添加以下代码:
package main

import (
    "fmt"
    "os"
    "path/filepath"
)

func main() {
    // 获取当前可执行文件的路径
    execpath, err := os.executable()
    if err != nil {
        fmt.println("error:", err)
        return
    }

    // 获取当前执行的脚本的路径(通过 os.args[0])
    scriptpath := os.args[0]

    // 将路径转换为绝对路径
    abspath, err := filepath.abs(scriptpath)
    if err != nil {
        fmt.println("error:", err)
        return
    }

    // 打印绝对路径
    fmt.println("absolute path:", abspath)
}
  • 将路径转换为绝对路径。您可以使用 filepath.abs 函数将相对路径转换为绝对路径。
import (
    "fmt"
    "os"
    "path/filepath"
)

func main() {
    execPath, _ := os.Executable()
    scriptPath := os.Args[0]
    absPath, _ := filepath.Abs(scriptPath)
    fmt.Println(fmt.Sprintf("Absolute path: %s", absPath))
}

运行此 go 代码,您将获得 apple.java 脚本的绝对路径。该路径可以进一步用于其他操作,例如打开文件或读取内容。

以上就是如何从 Java 文件 Apple.java 中获取编译为可执行文件 /usr/bin/demo 的 Go 代码的绝对路径?的详细内容,更多请关注硕下网其它相关文章!