construtor de elétrons vs empacotador de elétrons [fechado]


119

Qual é a principal diferença entre elétron-construtor e elétron-embalador . Existem alguns projetos de exemplo para ambos? O que é melhor para a construção de aplicativo independente .exe?

Respostas:


72

electron-packager foi (update: alterado neste commit: "refactor: merge electron-packager") usado pelo electron-builder. Este artigo afirma

Se você realmente quer ir para a cidade, dê uma olhada no construtor de elétrons que pega os pacotes produzidos pelo empacotador de elétrons e cria instaladores automatizados.


1
Isso está incorreto: não vejo nenhuma referência ao empacotador de elétrons no package.json do construtor de elétrons. github.com/electron-userland/electron-builder/…
mrm

Isso é porque não - mais.
daniel.gindi

Também usei o construtor de elétrons para meu projeto paralelo: github.com/hasukmistry/password-manager
Mistry

98

Atualização de agosto de 2019

Uso o electron-builder há mais de um ano, empacotando meu aplicativo para macOS, Windows 10 e Ubuntu Desktop. O mantenedor, develar, adicionou um ótimo site de documentos no início deste ano e tem se mantido atualizado sobre as mudanças do gatekeeper no macOS para garantir que os instaladores e atualizadores ainda funcionem.

Atualização de novembro de 2018

O principal desenvolvedor do construtor de elétrons continuou a colocar um trabalho substancial no projeto, incluindo suporte para Electron 3, novos destinos de publicação de artefatos e lançamentos regularmente com correções de bugs. O mantenedor anterior saiu do empacotador de elétrons e ainda não tem um mantenedor do Windows e ainda não tem suporte para binários assinados do Windows . Para referência:

electron-packager ( 72 releases,  17 open issues,   639 closed)
electron-builder  (651 releases, 399 open issues, 2,603 closed)

Atualização de dezembro de 2017

O Electron-builder foi amplamente trabalhado ao longo do ano passado, lançando novas versões com recursos e correções de bugs semanalmente. A documentação em https://www.electron.build/ é excelente e, seguindo o "Guia de configuração rápida" (na primeira página, várias seções abaixo), inclui um projeto padrão e instruções passo a passo.

Atualização de junho de 2017

electron-builderfaz a etapa de empacotamento (como o que electron-packagerfaz) e cria instaladores específicos da plataforma (como pkgou Mac AppStore para Mac, NSIS ou Windows Store para Windows e AppImage para Linux).

Para meu projeto existente, electron-forgefalhou com uma "dependência ausente" que estava presente em meu package.jsone node_modules).

Não está bem documentado, mas electron-buildermudou de Squirrel.windows para NSIS no início deste ano como o instalador padrão do Windows. NSIS faz pacotes de instalador substancialmente menores (30 MB abaixo de 90 MB, no caso do meu projeto).

Postagem original

Em março de 2017, em grande parte, eles obtiveram paridade de recursos. Encontrei o seguinte:

  • Ambos estão na organização " electron-userland ", portanto, ambos são "legítimos".
  • electron-packager não tem um mantenedor do Windows
  • O electron-builder tem mais colaboradores e muitos mais problemas fechados, então pode ter havido mais bugs ou mais usuários. O empacotador de elétrons tem mais estrelas.
  • o construtor de elétrons suporta substancialmente mais formatos alvo do que o empacotador de elétrons
  • electron-forge é baseado em eletron-packager, de modo que pode ser uma experiência mais fácil "fora da caixa".

13

electron-packager compacta o código-fonte e gera o arquivo executável.

O electron-builder pode gerar o instalador com suporte para “atualização automática” em electron.

http://electron.atom.io/docs/api/auto-updater/


hmm electron-packagersó parece criar uma pasta com um arquivo executável que inicia o aplicativo. não parece criar um instalador real ??
oldboy

5

Ok, eu sei que este tópico é antigo, mas gostaria de sugerir que qualquer um / todos usem electron-forge , isso tornará suas vidas melhores e acho que você se sentirá mais inteligente ao usá-lo. Eu pessoalmente tive pesadelos ao acordar enfrentando problemas de embalagem. Tem um cli muito simples, instale-o globalmente e seus sonhos podem se tornar realidade.

Espero que ajude! Não se preocupe, eu não fiz isso, mas me ajuda a fazer aplicativos de desktop.


2
Eu gostaria de ter encontrado este comentário antes de perder os últimos dois dias mexendo com o construtor e o empacotador.
codestr

1
Você é capaz de organizar atualizações automáticas em todas as três plataformas com a forja de elétrons, como no construtor de elétrons?
Jayarjo

No momento desta pós-electron-forge tem muitas vulnerabilidades enquanto o builder e packager não tem nenhum snyk.io/test/npm/electron-forge snyk.io/test/npm/electron-builder snyk.io/test/npm/electron- empacotador
Inkh Su Tesou

@InkhSuTesou é uma grande preocupação, entretanto? Todas essas vulnerabilidades estão nas versões de dependência específicas usadas pelas ferramentas. A maioria dessas vulnerabilidades está relacionada à negação de serviço e nenhuma delas soa como problemas que entrariam em seu pacote integrado. forge, builder e packager são todas ferramentas que você executa localmente, não ferramentas com uma API que você implanta. Para explorar esses problemas, um invasor precisa afetar sua árvore de origem ou servidor de CI e, se puder fazer qualquer uma dessas coisas, não precisará de uma vulnerabilidade de lodash.
bobpaul

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.