【发布时间】:2015-05-15 11:54:26
【问题描述】:
首先抱歉,可能是一个糟糕的标题 - 我想我遇到的很多困难与不知道我想要达到的目标的正确术语有关。
在 Go 中,我希望有一个程序在运行时可以动态创建辅助二进制文件。用一个基本的 hello world 示例来说明 - 使用伪代码,因为我不知道如何实现它。
generator.go
-> Read in statement from statement.txt (i.e. "Hello World")
-> Insert this statement into the following program...
package main
import (
"fmt"
)
func main(){
fmt.Println([dynamic statement inserted here])
}
-> compile this code into subprogram
每当执行go run generator.go 时,就会创建一个subprogram 二进制文件。运行它会输出Hello World。将 statement.txt 更改为其他内容并再次执行go run generator.go 将再次创建subprogram,它在运行时将执行新语句。
总结
使用 Go,我如何创建一个可以动态创建编译子程序作为输出的程序。
谢谢。
【问题讨论】:
-
这是使用go-bindata 可以解决的问题吗?
标签: dynamic go compilation dynamically-generated