Eu tentei duas abordagens diferentes, cada uma das quais falha de uma maneira diferente:
Abordagem nº 1:
- Crie uma pasta para o projeto.
No terminal:
- cd para pasta
- pacote swift init --type executável
- pacote fixo.swift
O comando xed abre o arquivo Package.swift como se fosse um projeto Xcode.
Em seguida, tento usar File>add package dependencies do Xcode para adicionar o analisador swift-agrument ao projeto.
Problema: O botão "Copiar dependência" não faz nada.
Abordagem nº 2:
- No Xcode, selecione Arquivo> novo projeto, ferramenta de linha de comando do Mac OS.
- Selecione Arquivo>adicionar dependências de pacote.
Problema:
Não é possível encontrar a biblioteca ArugmentParser não carregada: @rpath/ArgumentParser.framework/Versions/A/ArgumentParser
Tentei substituir main.swift por um arquivo chamado .swift que contém um @main
diretório e uma estrutura ParsableCommand. Eu tentei limpar a pasta build.
A única maneira de fazer isso funcionar é criar o pacote com a abordagem nº 1, init do pacote swift, editar o arquivo package.swift e adicionar manualmente as dependências do analisador de argumentos swift. Eu não trabalho muito com SPM, então tenho que me atrapalhar por um longo tempo para descobrir a sintaxe correta e fazê-la funcionar. Isso geralmente leva a vários falsos inícios e erros, além de muita frustração.
Não deveria haver um conjunto simples de etapas "faça A, B e C" que faça isso funcionar sem ter que limpar um monte de erros ou compor manualmente um arquivo SPM Package.swift?
O IDE não deveria me permitir criar uma ferramenta de linha de comando, adicionar o pacote swift-argument-parser e construir minha ferramenta pela primeira vez sem erros?
Solução da abordagem nº 2:
A implementação padrão do Swift Argument Parser adiciona um executável
generate-manual
.Exclua-o no destino> Geral