ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
エラー内容
Julia + Genie で新しいアプリケーションを作成するときに発生することがあるエラーです。
julia> using Genie
julia> Genie.newapp("MyApp")
2026-06-11 18:49:13:INFO:Main: Done! New app created at c:\T\Projects\MyApp
2026-06-11 18:49:13:DEBUG:Main: Installing app dependencies
Updating registry at `C:\Users\tarou\.juliapro\JuliaPro_v1.1.1.1\registries\JuliaPro`
Updating git-repo `https://pkg.juliacomputing.com//registry/JuliaPro`
ERROR: AssertionError: haskey(hashes, uuid)
Stacktrace:
[1] version_data!(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1})
at ...stdlib\v1.1\Pkg\src\Operations.jl:443
[2] #instantiate#67(::Nothing, ...) at ...Pkg\src\API.jl:466
...
[13] newapp(::String) at ...packages\Genie\wj9rG\src\Genie.jl:73
原因
このエラーは Julia の Pkg (パッケージマネージャ) 内部で発生します。エラーメッセージの haskey(hashes, uuid) は「あるパッケージの UUID に対応するハッシュ値がローカルレジストリに見つからない」という意味です。
| 典型原因 | 頻度 |
|---|---|
| ローカルレジストリのキャッシュが古い / 壊れている | ★★★ |
| JuliaPro 独自レジストリと General レジストリの不整合 | ★★ |
| Julia / Genie / Pkg のバージョン組み合わせ問題 | ★★ |
| Project.toml / Manifest.toml の不整合 | ★ |
| ネットワーク途中切断によるダウンロード破損 | ★ |
影響範囲
「アプリのディレクトリは作成されたが依存ライブラリのインストール中に失敗した」ため、後続フローが途中で止まる状況です:
- アプリディレクトリ作成 — 完了
- Project.toml / Manifest.toml の生成 — 完了
- プロジェクトの有効化 — 完了
- 依存ライブラリのインストール — 失敗ここ
- REPL へのアプリロード — 未実行
- Web サーバー起動 — 未実行
つまりサーバー起動自体はできるが、一部の機能が動かない状態になりがちです。
対処法 1: レジストリを再構築する (推奨)
ローカルレジストリのキャッシュ不整合が原因のことが多いので、まずはレジストリディレクトリを削除して再取得します。
# Windows
rmdir /s /q "%USERPROFILE%\.julia\registries"
# Linux / macOS
rm -rf ~/.julia/registries# Julia REPL で
using Pkg
pkg"registry add General"
Pkg.update()
完了後、改めて Genie.newapp("MyApp") を実行します。
対処法 2: Pkg.gc() + instantiate
レジストリは壊れていないが Manifest.toml と実体が食い違っている場合:
using Pkg
Pkg.gc() # 未使用キャッシュ削除
Pkg.activate(".") # アプリディレクトリで
Pkg.instantiate() # 依存を解決
Pkg.precompile() # プリコンパイル
対処法 3: 公式 Registry のみを使う (JuliaPro ユーザー向け)
このエラーは特にJuliaPro(Julia Computing の有償ディストリビューション)で報告されることが多いです。JuliaPro 独自レジストリと General レジストリの間で UUID が食い違うことが原因。
# 既存の JuliaPro レジストリを削除
using Pkg
pkg"registry rm JuliaPro"
# General レジストリのみを追加
pkg"registry add https://github.com/JuliaRegistries/General.git"
Pkg.update()
対処法 4: Julia を新しいバージョンに上げる
Julia 1.1 / 1.2 の Pkg にはこの種の不整合バグが残っています。Julia 1.6 (LTS) 以降では Pkg がほぼリライトされ同種エラーは大幅減少しました。
# https://julialang.org/downloads/ から最新の LTS 版を取得
# Windows なら juliaup を使うと管理が楽
winget install julia
juliaup add release
juliaup default release
対処法 5: アプリディレクトリは活かしつつ手動で依存解決
エラーが出てもアプリディレクトリ自体は作られているので、そこに手動で依存を入れ直すこともできます。
# アプリディレクトリに移動した後
using Pkg
Pkg.activate(".")
Pkg.add("Genie")
Pkg.add("Logging")
# Project.toml に列挙された依存をひとつずつ
Pkg.instantiate()
FAQ
Q: ~/.julia ごと消しても大丈夫?
A: 全パッケージ + 設定がリセットされる。レジストリだけ消したいなら ~/.julia/registries のみで OK。
Q: 起動はできるが一部機能が動かない
A: 依存ライブラリの一部だけインストールされていない可能性。Pkg.status() で確認して足りないものを Pkg.add()。
Q: Genie 公式に同じ報告はある?
A: GitHub Issue で過去複数報告あり。Julia + Pkg の組み合わせ問題として記録されている。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- ERROR: UndefVarError: Genie not defined
- ERROR: AssertionError: haskey(hashes, uuid)
- ERROR: LoadError: LoadError: invalid redefinition of constant UserApp
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?