Go Playground는 Go 코드 조각을 테스트할 수 있는 편리한 환경을 제공합니다. 그러나 Playground에서 가져올 수 있는 패키지에는 특정 제한 사항이 있습니다.
Playground의 "정보" 버튼에는 다음 정보가 포함되어 있습니다.
"놀이터는 일부 예외를 제외하고 대부분의 표준 라이브러리를 사용할 수 있습니다."
이 설명은 표준 라이브러리의 패키지가 일반적으로 가져올 수 있지만 전부는 아닙니다.
표준 라이브러리 패키지는 "패키지" 페이지의 "표준 라이브러리" 섹션에 나열되어 있습니다. 하지만 golang.org/x/exp/ebnf와 같이 "기타" 섹션에 나열된 패키지는 플레이그라운드에서 가져올 수 없습니다.
플레이그라운드의 가져오기가 제한되어 있습니다. 주로 보안 및 기능 고려 사항 때문입니다. 외부 패키지를 가져오면 특히 제한되지 않은 Playground 환경에서 보안 위험과 성능 문제가 발생할 수 있습니다.
표준 라이브러리 패키지의 가져오기 가능성을 입증하려면 다음을 수행하세요. 코드 조각은 표준 라이브러리의 모든 패키지를 가져옵니다(빌드 가능한 Go 소스 파일이 없는 패키지 제외).
package main import ( _ "archive/tar" _ "archive/zip" _ "bufio" _ "bytes" _ "compress/bzip2" _ "compress/flate" _ "compress/gzip" _ "compress/lzw" _ "compress/zlib" _ "container/heap" _ "container/list" _ "container/ring" _ "crypto" _ "crypto/aes" _ "crypto/cipher" _ "crypto/des" _ "crypto/dsa" _ "crypto/ecdsa" _ "crypto/elliptic" _ "crypto/hmac" _ "crypto/md5" _ "crypto/rand" _ "crypto/rc4" _ "crypto/rsa" _ "crypto/sha1" _ "crypto/sha256" _ "crypto/sha512" _ "crypto/subtle" _ "crypto/tls" _ "crypto/x509" _ "crypto/x509/pkix" _ "database/sql" _ "database/sql/driver" _ "debug/dwarf" _ "debug/elf" _ "debug/gosym" _ "debug/macho" _ "debug/pe" _ "debug/plan9obj" _ "encoding" _ "encoding/ascii85" _ "encoding/asn1" _ "encoding/base32" _ "encoding/base64" _ "encoding/binary" _ "encoding/csv" _ "encoding/gob" _ "encoding/hex" _ "encoding/json" _ "encoding/pem" _ "encoding/xml" _ "errors" _ "expvar" _ "flag" _ "fmt" _ "go/ast" _ "go/build" _ "go/constant" _ "go/doc" _ "go/format" _ "go/importer" _ "go/parser" _ "go/printer" _ "go/scanner" _ "go/token" _ "go/types" _ "hash" _ "hash/adler32" _ "hash/crc32" _ "hash/crc64" _ "hash/fnv" _ "html" _ "html/template" _ "image" _ "image/color" _ "image/color/palette" _ "image/draw" _ "image/gif" _ "image/jpeg" _ "image/png" _ "index/suffixarray" _ "io" _ "io/ioutil" _ "log" _ "log/syslog" _ "math" _ "math/big" _ "math/cmplx" _ "math/rand" _ "mime" _ "mime/multipart" _ "mime/quotedprintable" _ "net" _ "net/http" _ "net/http/cgi" _ "net/http/cookiejar" _ "net/http/fcgi" _ "net/http/httptest" _ "net/http/httputil" _ "net/http/pprof" _ "net/mail" _ "net/rpc" _ "net/rpc/jsonrpc" _ "net/smtp" _ "net/textproto" _ "net/url" _ "os" _ "os/exec" _ "os/signal" _ "os/user" _ "path" _ "path/filepath" _ "reflect" _ "regexp" _ "regexp/syntax" // _ "runtime/cgo" // ERROR: missing Go type information // for global symbol: .dynsym size 60 _ "runtime/debug" _ "runtime/pprof" _ "runtime/race" _ "runtime/trace" _ "sort" _ "strconv" _ "strings" _ "sync" _ "sync/atomic" _ "syscall" _ "testing" _ "testing/iotest" _ "testing/quick" _ "text/scanner" _ "text/tabwriter" _ "text/template" _ "text/template/parse" _ "time" _ "unicode" _ "unicode/utf16" _ "unicode/utf8" _ "unsafe" ) func main() { println("ok") }
해 보세요. 가져올 수 있는 패키지의 전체 목록을 보려면 Playground에서 확인하세요.
위 내용은 Go Playground에서는 어떤 표준 라이브러리 패키지가 제한되어 있으며 그 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!