検索
ホームページバックエンド開発Golanggo get golang.org/x パッケージが失敗する問題を迅速に解決する

この記事は、go language チュートリアル コラムによって提供され、go get golang.org/x パッケージの失敗問題をワンクリックで解決する方法を紹介するもので、困っている友人の役に立てば幸いです。

golang.org/x パッケージを取得するためのワンクリック ソリューションの失敗

問題の説明

go get を使用すると、 go installgo mod などのコマンドを実行すると、対応するパッケージまたは依存パッケージが自動的にダウンロードされます。ただし、よく知られている理由により、golang.org/x/... に類似したパッケージはダウンロードに失敗します。以下に示すように:

$ go get -u golang.org/x/sys

go get golang.org/x/sys: unrecognized import path "golang.org/x/sys" (https fetch: Get https://golang.org/x/sys?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

解決策

では、この問題をどのように解決すればよいでしょうか。結局のところ、まだバグを作成する必要があります~

マニュアル ダウンロード

共通の golang.org/x/... パッケージは GitHub で一般公開されています。対応。たとえば、golang.org/x/textgithub.com/golang/text に対応します。したがって、対応する GitHub リポジトリを指定されたディレクトリに手動でダウンロードまたはクローン作成できます。

mkdir $GOPATH/src/golang.org/x
cd $GOPATH/src/golang.org/x
git clone git@github.com:golang/text.git
rm -rf text/.git

GitHub 上のほとんどのミラー ウェアハウスにはタグがないため、バージョンを指定する必要がある場合、この方法では解決策がありません。さらに、特に依存関係が多すぎるため、プログラマが手動でそれを行うにはどうすればよいでしょうか。

プロキシの設定

プロキシ がある場合は、対応する環境変数を設定できます:

export http_proxy=http://proxyAddress:port
export https_proxy=http://proxyAddress:port
または、

all_proxy## を使用します。直接 #:<pre class="brush:php;toolbar:false">export all_proxy=http://proxyAddress:port</pre>go mod replace

Go 1.11 バージョンから、

go modules

の新しいサポートがパッケージの依存関係管理の問題を解決するために使用されます。このツールは、パッケージのエイリアスの問題を解決し、golang.org/x がダウンロードできない問題も解決する replace を提供します。

go module

はネイティブの go mod コマンドに統合されていますが、コード ベースが $GOPATH にある場合、 モジュール 関数はデフォルトでは有効になっていません。有効にするのは非常に簡単です。環境変数 export GO111MODULE=on を使用して有効にできます。 以下は参考例です:

module example.com/hello

require (
    golang.org/x/text v0.3.0
)

replace (
    golang.org/x/text => github.com/golang/text v0.3.0
)

同様に、glide や gopm などのサードパーティのパッケージ管理ツールがあり、さまざまなソリューションを提供します。

GOPROXY 環境変数

ついに、この記事の最大のキラーである

GOPROXY

が登場します。

Go 1.11

バージョン以降、go module パッケージ依存関係管理ツールが正式にサポートされることがわかっています。 実際には、

GOPROXY

環境変数も追加されています。この変数が設定されている場合、ソース コードは、以前のようにコード ライブラリから直接ダウンロードするのではなく、この環境変数で設定されたプロキシ アドレスを通じてダウンロードされます。これは、科学的にインターネットにアクセスできない私たち発展途上の国民にとって、間違いなく最大の朗報です。 さらに嬉しいのは、オープンソース プロジェクト goproxy.io が私たちが望むことを達成するのに役立ってくれたことです。このプロジェクトを使用すると、開発者はワンクリックで独自の

GOPROXY

プロキシ サービスを構築できます。同時に、パブリック プロキシ サービス https://goproxy.io も提供されます。ブロックされたソース コード パッケージを通常どおりダウンロードするには、この環境変数を設定するだけです: <pre class="brush:php;toolbar:false">export GOPROXY=https://goproxy.io</pre>ただし、

go module function に依存する必要があります。 MODULE は export GO111MODULE=on でオンにできます。 プロジェクトが

GOPATH

にない場合、go get ... は使用できませんが、go mod ... は使用できます。関連するコマンド。 この環境変数を空白に設定して、

export GOPROXY=

をオフにすることもできます。 Windows ユーザーの場合は、

PowerShell

で設定できます: <pre class="brush:php;toolbar:false">$env:GOPROXY = &quot;https://goproxy.io&quot;</pre>最後に、この環境変数に対して

GOPROXY

ソリューションを使用することを強くお勧めします。ただし、Go バージョン >= 1.11 である必要があります。 最後に、Qiniu は国内ユーザーがアクセスできないパッケージにより速くアクセスできるようにするために、国内プロキシ goproxy.cn も立ち上げました。これは実に良心的です。

以上がgo get golang.org/x パッケージが失敗する問題を迅速に解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はsegmentfaultで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
マスタリングゴー文字列:「文字列」パッケージに深く潜るマスタリングゴー文字列:「文字列」パッケージに深く潜るMay 12, 2025 am 12:05 AM

テキストデータを処理するためのツールを提供し、基本的な文字列から高度な正規表現のマッチングにスプライシングするためのツールを提供するため、Goの「文字列」パッケージに注意する必要があります。 1)「文字列」パッケージは、パフォーマンスの問題を回避するために文字列をスプライスするために使用される結合関数など、効率的な文字列操作を提供します。 2)contensany関数などの高度な関数が含まれており、文字列に特定の文字セットが含まれているかどうかを確認します。 3)交換関数は、文字列のサブストリングを交換するために使用され、交換順序とケースの感度に注意を払う必要があります。 4)分割関数は、セパレーターに従って文字列を分割することができ、しばしば正規表現処理に使用されます。 5)使用するときは、パフォーマンスを考慮する必要があります。

Goの「エンコード/バイナリ」パッケージ:バイナリ操作のためのあなたの頼みGoの「エンコード/バイナリ」パッケージ:バイナリ操作のためのあなたの頼みMay 12, 2025 am 12:03 AM

「エンコード/バイナリ」パッケージを包みます

バイトスライス操作チュートリアル:「バイト」パッケージをマスターするバイトスライス操作チュートリアル:「バイト」パッケージをマスターするMay 12, 2025 am 12:02 AM

GOでBYTESパッケージをマスターすると、コードの効率と優雅さを向上させることができます。 1)バイナーズパッケージは、バイナリデータの解析、ネットワークプロトコルの処理、およびメモリ管理に不可欠です。 2)bytes.bufferを使用して、バイトスライスを徐々に構築します。 3)BYTESパッケージは、バイトスライスの検索、交換、およびセグメント化の関数を提供します。 4)BYTES.READERタイプは、特にI/O操作でのバイトスライスのデータを読み取るのに適しています。 5)BYTESパッケージは、GoのGarbage Collectorと協力して機能し、ビッグデータ処理の効率を向上させます。

「文字列」パッケージを使用して、GOの文字列を操作しますか?「文字列」パッケージを使用して、GOの文字列を操作しますか?May 12, 2025 am 12:01 AM

Goで「文字列」パッケージを使用して、文字列を操作できます。 1)文字列を使用して、文字列の両端で白文字を削除します。 2)文字列を使用して、指定された区切り文字に従って文字列をスライスに分割します。 3)文字列スライスを文字列から1つの文字列にマージします。 4)文字列を使用して、文字列に特定のサブストリングが含まれているかどうかを確認します。 5)文字列を使用して、グローバルな交換を実行します。使用するときは、パフォーマンスと潜在的な落とし穴に注意してください。

「バイト」パッケージを使用してGOのバイトスライスを操作する方法(ステップバイステップ)「バイト」パッケージを使用してGOのバイトスライスを操作する方法(ステップバイステップ)May 12, 2025 am 12:01 AM

検索、分割、結合、およびバッファリングを提供するために、ビートレスリックマニピュレーションのために強力に効果的に効果的に効果的に効果的です

BYTESパッケージに移動:代替案は何ですか?BYTESパッケージに移動:代替案は何ですか?May 11, 2025 am 12:11 AM

thealternativestogo'sbyteSpackageincludeStringspackage、bufiopackage、andcustomstructs.1)thestringspackagecanbeusedby byconvertingbytestostostringsand.2)TheBufiopackageisidealforhhnetlimagreatreamsofreamSoftaefftaefftaimefiditipry.3)

Goのバイトスライスの操作:「バイト」パッケージのパワーGoのバイトスライスの操作:「バイト」パッケージのパワーMay 11, 2025 am 12:09 AM

「バイト」パッケージを積極的に構成することは、lices、重要なもの、ネットワークプロトコル、およびfilei/o.itofferslargedatasets、readerforsimulatingstreamreading、およびjo inforffffishideの調整、およびバッファーフォーハンドリングラーゲットアセット、およびバッファリングリケートのfunctionsfunctionsfunctionslei/o

Go Stringsパッケージ:弦操作の包括的なガイドGo Stringsパッケージ:弦操作の包括的なガイドMay 11, 2025 am 12:08 AM

Go'sstringspackageiscialforefficientsmanipulation、offeringtoolslikestrings.split()、strings.join()、strings.replaceall()、andstrings.contains()

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。