github.com/megatontech/mynoteforgo@v0.0.0-20200507084910-5d0c6ea6e890/源码/cmd/go/testdata/script/mod_replace_import.txt (about) 1 env GO111MODULE=on 2 3 # 'go list -mod=readonly' should not add requirements even if they can be 4 # resolved locally. 5 cp go.mod go.mod.orig 6 ! go list -mod=readonly all 7 cmp go.mod go.mod.orig 8 9 # 'go list' should resolve imports using replacements. 10 go list all 11 stdout 'example.com/a/b$' 12 stdout 'example.com/x/v3$' 13 stdout 'example.com/y/z/w$' 14 stdout 'example.com/v' 15 16 # The selected modules should prefer longer paths, 17 # but should try shorter paths if needed. 18 # Modules with a major-version suffix should have a corresponding pseudo-version. 19 # Replacements that specify a version should use the latest such version. 20 go list -m all 21 stdout 'example.com/a/b v0.0.0-00010101000000-000000000000 => ./b' 22 stdout 'example.com/y v0.0.0-00010101000000-000000000000 => ./y' 23 stdout 'example.com/x/v3 v3.0.0-00010101000000-000000000000 => ./v3' 24 stdout 'example.com/v v1.12.0 => ./v12' 25 26 -- go.mod -- 27 module example.com/m 28 29 replace ( 30 example.com/a => ./a 31 example.com/a/b => ./b 32 ) 33 34 replace ( 35 example.com/x => ./x 36 example.com/x/v3 => ./v3 37 ) 38 39 replace ( 40 example.com/y/z/w => ./w 41 example.com/y => ./y 42 ) 43 44 replace ( 45 example.com/v v1.11.0 => ./v11 46 example.com/v v1.12.0 => ./v12 47 example.com/v => ./v 48 ) 49 50 -- m.go -- 51 package main 52 import ( 53 _ "example.com/a/b" 54 _ "example.com/x/v3" 55 _ "example.com/y/z/w" 56 _ "example.com/v" 57 ) 58 func main() {} 59 60 -- a/go.mod -- 61 module a.localhost 62 -- a/a.go -- 63 package a 64 -- a/b/b.go-- 65 package b 66 67 -- b/go.mod -- 68 module a.localhost/b 69 -- b/b.go -- 70 package b 71 72 -- x/go.mod -- 73 module x.localhost 74 -- x/x.go -- 75 package x 76 -- x/v3.go -- 77 package v3 78 import _ "x.localhost/v3" 79 80 -- v3/go.mod -- 81 module x.localhost/v3 82 -- v3/x.go -- 83 package x 84 85 -- w/go.mod -- 86 module w.localhost 87 -- w/skip/skip.go -- 88 // Package skip is nested below nonexistent package w. 89 package skip 90 91 -- y/go.mod -- 92 module y.localhost 93 -- y/z/w/w.go -- 94 package w 95 96 -- v12/go.mod -- 97 module v.localhost 98 -- v12/v.go -- 99 package v 100 101 -- v11/go.mod -- 102 module v.localhost 103 -- v11/v.go -- 104 package v 105 106 -- v/go.mod -- 107 module v.localhost 108 -- v/v.go -- 109 package v