title: Golang Module problem--package xxx/xxxx is not in GOROOT
body: <p>so here is what my directory is:</p>
  <pre><code>go
  |-src
     |-ppppppSample
          |-newFolderOne
              |-firstSample.go
          |-hello.go
          |-go.mod
  </code></pre>
  <p>and here is the content of hello.go</p>
  <pre><code>package main
  
  import (
      &quot;fmt&quot;
      jjj &quot;ppppppSample/newFolderOne&quot;
  )
  
  
  
  func main() {
      fmt.Println(&quot;start to test&quot;)
      fmt.Println(jjj.FirstVVVV)
  }
  </code></pre>
  <p>here is the content of firstSample.go</p>
  <pre><code>package newFolderOne
  
  var FirstVVVV = &quot;Im first SSSSSSSSSSSS&quot;
  </code></pre>
  <p>and here is my go.mod's content</p>
  <pre><code>module mmmmmppppp
  
  go 1.15
  </code></pre>
  <p>when giving it the cmd go run hello.go, the terminal came out with like this:</p>
  <p>D:\Users\eien_zheng\go\src\ppppppSample&gt;go run hello.go
  hello.go:5:2: package ppppppSample/newFolderOne is not in GOROOT (C:\Go\src\ppppppSample\newFolderOne)</p>
  <p>So here is my question:</p>
  <p>(since I'm new for golang, I wish you guys could understand and tolerate some of my misunderstanding)</p>
  <p>According to my understanding to Go module (maybe it's wrong), the Go module's function is gonna let some kind of online resource be downloaded to the directory GOPATH/pkg/mod instead of existing in GOROOT.
  No matter which directory your project in, your project can still import those resource from GOPATH/pkg/mod if you init Go module.
  But!!, in my understanding, it still can use package system to import package around project directory, in the meantime import online resource by Go module system.</p>
  <p>How is that when I do (mod init) for hello.go, then it loses the (basic package import function) for this project?</p>