¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Problemas de implementação de @sap/mdk-tools no iOS com nativescript 8.2.2

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 8 Vistas
0
Cargando...

Olá,

Estamos utilizando o seguinte pacote npm para implementar o aplicativo SAM2110 com nativescript 8.2.2 nos serviços móveis da BTP:

https://www.npmjs.com/package/@sap/mdk-tools

Foi implementado com sucesso, no entanto, ao testar o aplicativo, ele funciona no Android, mas não no iOS, exibindo a seguinte mensagem:

Verifiquei se o tsconfig.json está configurado corretamente e incluído no bundle.js

module.exports = JSON.parse('{"compilerOptions":{"target":"es2015","module":"esnext","moduleResolution":"node","lib":["es2018","dom"],"experimentalDecorators":true,"emitDecoratorMetadata":true,"removeComments":true,"inlineSourceMap":true,"noEmitOnError":false,"noEmitHelpers":true,"baseUrl":".","plugins":[{"transform":"@nativescript/webpack/dist/transformers/NativeClass","type":"raw"}]},"exclude":["node_modules"]}');

Talvez a diferença entre a versão 1.3.2 do ts-patch na ferramenta mdk e na minha mdk seja 2.0.1.

Obrigado

ios-sam.png
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Enfrentei o mesmo problema. Minha depuração resultou no seguinte:

  • O problema ocorre quando o pacote NPM mdk-tools é instalado/adicionado a um projeto node como uma dependência de desenvolvimento; o problema não ocorre quando o pacote NPM mdk-tools é instalado globalmente.
  • Acredito que o problema está relacionado com o seguinte arquivo do pacote NPM mdk-tools (o caminho indicado é relativo ao diretório "node_modules" do projeto):
    • @sap/mdk-tools/lib/bundler/tsconfig6.json
  • Especificamente, no arquivo "tsconfig6.json", acredito que o seguinte par chave/valor está causando o problema:
    • "plugins": [{"transform": "@nativescript/webpack/dist/transformers/NativeClass", "type": "raw"}]
  • Acredito que o problema reside no fato de que a função "bundler" não consegue resolver a referência "@nativescript/webpack/dist/transformers/NativeClass", no entanto, nenhum erro é lançado ou informado na saída do console durante a execução do comando "mdk deploy".

Consegui aplicar a seguinte solução temporária para lidar com o problema. Novamente, os caminhos indicados são relativos ao diretório "node_modules" do projeto:

  • Copiar "@nativescript/webpack/" para "@sap/mdk-tools/node_modules/"
Para esclarecer, a cópia deve resultar na presença do seguinte caminho no diretório "node_modules" do projeto:
  • @sap/mdk-tools/node_modules/@nativescript/webpack/

Abri o incidente SAP 1053868/2023 referente a este problema.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

(Comentário removido)

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Obrigado pelos conselhos, Gary. Concordo que está relacionado com a estrutura da pasta de módulos do nó.

Na extensão MDK, a pasta node_modules, @sap/mdk-tools está no mesmo nível que @nativescript/webpack.

node_modules/

|-@sap/mdk-tools

|-@nativescript/webpack

Se esse problema ocorrer, tanto Android quanto iOS devem relatar erros.

Você pode verificar o resultado da compilação na pasta .build do projeto. Se o resultado estiver correto, não deve haver strings 'NativeClass()' em bundle.js.

Se houver strings 'NativeClass()', você poderia nos dizer a estrutura de pastas de @sap/mdk-tools e @nativescript/webpack? Ou como você usou mdkl-tools?

Saudações,

Zhen-kun

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

@Zhen-kun Li -

Aqui estão as declarações de progresso finais geradas pelo comando 'deploy' que mostram um pacote e implantação bem-sucedidos no BTP...

Tenho uma ocorrência de 'NativeClass()' no arquivo 'bundle.js' gerado pelo comando 'deploy'...

Aqui está a estrutura do diretório 'node_modules' no meu projeto Node, mostrando o subdiretório '@nativescript' e o subdiretório '@sap'...

Aqui há um trecho do arquivo 'package.json' do meu projeto que mostra como o comando 'deploy' é invocado e exibe a versão do '@sap/mdk-tools' utilizada...

Este é o único passo que devo realizar para evitar que ocorra o erro...

Saudações,

Gary Faulkner

node-modules-after-fix.png
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?