Go 1.17 and later use modern `//go:build` constraints, the old `// +build:` constraints should be removed.
* remove the global methods but create dynamiclly * Fix lint * Fix windows lint * Fix windows lint * some improvements Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>