IOS版本中的nativescript 5.1和tns_modules文件夹

时间:2019-02-04 08:25:26

标签: nativescript

我以前在某些应用程序中遇到过此问题(N 4.1)。 现在我正在做另一个应用程序,并且我遇到了同样的问题: 首先,我正在准备构建:

tns build ios --for-device --release --provision MY_Provision

Nativescript正在构建,因此接下来我要在XCode中打开它,并进行一些改动,例如版本号等。 最后,我正在执行“存档”并尝试验证此存档。 结果是错误,在以前用N 4.1编写的应用程序中,我具有相同的功能,但使用另一个插件,现在验证抛出:无效的构建结构-二进制app / rns_modules.fstevents.lib / binding / Release / FILE NAME。 关于此文件夹的许多错误。 因此,我刚刚删除了该目录,并进行了另一个归档和验证-应用程序通过了验证。

所以,我的问题是-我在tns_modules中需要这么多的插件吗? 还是更好的问题-有什么方法可以确定不需要什么? 或者,在构建应用程序时我做错了什么?似乎这里有大量的目录,我想知道是否有某种清理或其他方法?

目前,存储应用程序的唯一方法是先进行验证,检查阻止验证的内容,删除它,然后检查应用程序是否有效(:(),然后重试。 谢谢。

下方的附加文件夹阻止tns_modules内部的验证和目录数量。

pacakge.json:

enter image description here

enter image description here enter image description here

1 个答案:

答案 0 :(得分:3)

NativeScript CLI将在tns_modules中准备(即复制)在package.json的dependencies部分中声明的所有软件包(及其依赖项)。所有devDependencies及其依赖项都不会复制到本地Xcode / Android Studio项目中。 因此,仅用于构建应用程序所需的所有软件包都应安装为devDependencies。例如,这样的包是nativescript-dev-webpacknativescript-dev-typescript等。 另外,您似乎已将NativeScript CLI安装为项目的依赖项。默认情况下,应全局安装,即npm i -g nativescript。如果您省略了-g标志,npm会将其安装为您项目的依赖项。 您可以尝试:

rm -rf platforms
npm un --save nativescript

检查package.json中其他名称为-dev的其他软件包,并确保它们位于devDependencies部分中。

之后运行tns build ios --forDevice