如何使用DEPS.EDN别名交叉编译Windows Linux Macos Ubejar ubejar?

发布于 2025-02-04 18:12:39 字数 3404 浏览 1 评论 0 原文

  • Nightcode已实现了
  • 但由于某些原因,它不仅可以复制代码来使用
; does not work
{:paths ["./src" "out/ui" "out/identicon"]
 :mvn/repos {"jitpack.io" {:url "https://jitpack.io"}}
 :deps {org.clojure/clojure {:mvn/version "1.10.3"}
        org.clojure/clojurescript {:mvn/version "1.11.4"}
        org.clojure/core.async {:mvn/version "1.3.618"}

        test.check/test.check {:git/url "https://github.com/clojure/test.check"
                               :sha "b6a318af92e836f1f20960f38a5944168b88d60d"}
        cheshire/cheshire {:mvn/version "5.10.2"}

        cljfx/cljfx {:git/url "https://github.com/cljfx/cljfx"
                     :sha "29aaef956b22cee774524912a3083ed651033f1b"
                     :exclusions [org.openjfx/javafx-controls
                                  org.openjfx/javafx-base
                                  org.openjfx/javafx-fxml
                                  org.openjfx/javafx-graphics
                                  org.openjfx/javafx-media
                                  org.openjfx/javafx-web]}

        org.openjfx/javafx-base {:mvn/version "17.0.2"}
        org.openjfx/javafx-fxml {:mvn/version "17.0.2"}
        #_org.openjfx/javafx-graphics #_{:mvn/version "17.0.2"}
        #_org.openjfx/javafx-web #_{:mvn/version "17.0.2"}}

 :aliases
 {:Ripley {:extra-deps {Ripley/Ripley {:git/url "https://github.com/Empire-Strikes-Back/Ripley"
                                       :sha "becd2573ab55d42933134d346bc46cdd8fa08c04"}}}

  :Genie {:extra-deps {Genie/Genie {:git/url "https://github.com/Empire-Strikes-Back/Genie"
                                    :sha "fe9200d223e3a5c79e88dfa17bc2697c09dae70e"}}}

  :Zazu {:extra-deps {Zazu/Zazu {:git/url "https://github.com/Empire-Strikes-Back/Zazu"
                                 :sha "063ef7649c01284be8f5a1e9814d5bf83025ad76"}}}

  :shadow {:extra-deps {thheller/shadow-cljs {:mvn/version "2.18.0"}
                        nrepl/nrepl {:mvn/version "0.8.3"}
                        cider/cider-nrepl {:mvn/version "0.25.5"}
                        cider/piggieback {:mvn/version "0.5.2"}}}

  :ui {:extra-deps {reagent/reagent {:mvn/version "1.1.1"}
                    sci/sci {:git/url "https://github.com/borkdude/sci"
                             :sha "6c10e494371a37a56bef45c8148435888bae3a45"}}}

  :linux {:extra-deps {org.openjfx/javafx-base$linux {:mvn/version "17.0.2"}
                       org.openjfx/javafx-fxml {:mvn/version "17.0.2"}
                       org.openjfx/javafx-graphics$linux {:mvn/version "17.0.2"}
                       org.openjfx/javafx-web$linux {:mvn/version "17.0.2"}}}
  :windows {:extra-deps {org.openjfx/javafx-graphics$win {:mvn/version "17.0.2"}
                         org.openjfx/javafx-web$win {:mvn/version "17.0.2"}}}
  :macos {:extra-deps {org.openjfx/javafx-graphics$mac {:mvn/version "17.0.2"}
                       org.openjfx/javafx-web$mac {:mvn/version "17.0.2"}}}}}

如何使用自己的分类器为每个OS编译每个OS的Uberjars?

; does not work
{:paths ["./src" "out/ui" "out/identicon"]
 :mvn/repos {"jitpack.io" {:url "https://jitpack.io"}}
 :deps {org.clojure/clojure {:mvn/version "1.10.3"}
        org.clojure/clojurescript {:mvn/version "1.11.4"}
        org.clojure/core.async {:mvn/version "1.3.618"}

        test.check/test.check {:git/url "https://github.com/clojure/test.check"
                               :sha "b6a318af92e836f1f20960f38a5944168b88d60d"}
        cheshire/cheshire {:mvn/version "5.10.2"}

        cljfx/cljfx {:git/url "https://github.com/cljfx/cljfx"
                     :sha "29aaef956b22cee774524912a3083ed651033f1b"
                     :exclusions [org.openjfx/javafx-controls
                                  org.openjfx/javafx-base
                                  org.openjfx/javafx-fxml
                                  org.openjfx/javafx-graphics
                                  org.openjfx/javafx-media
                                  org.openjfx/javafx-web]}

        org.openjfx/javafx-base {:mvn/version "17.0.2"}
        org.openjfx/javafx-fxml {:mvn/version "17.0.2"}
        #_org.openjfx/javafx-graphics #_{:mvn/version "17.0.2"}
        #_org.openjfx/javafx-web #_{:mvn/version "17.0.2"}}

 :aliases
 {:Ripley {:extra-deps {Ripley/Ripley {:git/url "https://github.com/Empire-Strikes-Back/Ripley"
                                       :sha "becd2573ab55d42933134d346bc46cdd8fa08c04"}}}

  :Genie {:extra-deps {Genie/Genie {:git/url "https://github.com/Empire-Strikes-Back/Genie"
                                    :sha "fe9200d223e3a5c79e88dfa17bc2697c09dae70e"}}}

  :Zazu {:extra-deps {Zazu/Zazu {:git/url "https://github.com/Empire-Strikes-Back/Zazu"
                                 :sha "063ef7649c01284be8f5a1e9814d5bf83025ad76"}}}

  :shadow {:extra-deps {thheller/shadow-cljs {:mvn/version "2.18.0"}
                        nrepl/nrepl {:mvn/version "0.8.3"}
                        cider/cider-nrepl {:mvn/version "0.25.5"}
                        cider/piggieback {:mvn/version "0.5.2"}}}

  :ui {:extra-deps {reagent/reagent {:mvn/version "1.1.1"}
                    sci/sci {:git/url "https://github.com/borkdude/sci"
                             :sha "6c10e494371a37a56bef45c8148435888bae3a45"}}}

  :linux {:extra-deps {org.openjfx/javafx-base$linux {:mvn/version "17.0.2"}
                       org.openjfx/javafx-fxml {:mvn/version "17.0.2"}
                       org.openjfx/javafx-graphics$linux {:mvn/version "17.0.2"}
                       org.openjfx/javafx-web$linux {:mvn/version "17.0.2"}}}
  :windows {:extra-deps {org.openjfx/javafx-graphics$win {:mvn/version "17.0.2"}
                         org.openjfx/javafx-web$win {:mvn/version "17.0.2"}}}
  :macos {:extra-deps {org.openjfx/javafx-graphics$mac {:mvn/version "17.0.2"}
                       org.openjfx/javafx-web$mac {:mvn/version "17.0.2"}}}}}

how to compile uberjars for each OS with its own classifier?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

牛↙奶布丁 2025-02-11 18:12:39
  OPERATING_SYSTEM=$1
  COMMIT_HASH=$(git rev-parse --short HEAD)
  COMMIT_COUNT=$(git rev-list --count HEAD)
  clojure \
    -J-Dcljfx.skip-javafx-initialization=true \
    -X:Genie Genie.core/process \
    :main-ns Cara-Dune.main \
    :filename "\"out/Cara-Dune-$COMMIT_COUNT-$COMMIT_HASH-$OPERATING_SYSTEM.jar\"" \
    :paths '["src" "out/ui" "out/identicon"]' \
    :create-basis-opts "{:aliases [:$OPERATING_SYSTEM]}"

  • 并且仍然存在-Linux .jar是80.7MB
  • Windows 108 Mac 112-因为它们包含javafx jar for Linux-当他们不应该时,它们在Linux上运行
  OPERATING_SYSTEM=$1
  COMMIT_HASH=$(git rev-parse --short HEAD)
  COMMIT_COUNT=$(git rev-list --count HEAD)
  clojure \
    -J-Dcljfx.skip-javafx-initialization=true \
    -X:Genie Genie.core/process \
    :main-ns Cara-Dune.main \
    :filename "\"out/Cara-Dune-$COMMIT_COUNT-$COMMIT_HASH-$OPERATING_SYSTEM.jar\"" \
    :paths '["src" "out/ui" "out/identicon"]' \
    :create-basis-opts "{:aliases [:$OPERATING_SYSTEM]}"

  • and still - linux .jar is 80.7mb
  • windows 108 mac 112 - because they include javafx jar for linux - they run on linux when they shouldn't
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文