为什么Nativescript静态绑定生成器无缘无故失败,没有信息?

时间:2020-07-28 23:16:25

标签: nativescript

我有一个已经处理了将近两年的Nativescript核心(js)项目。我的最新版本是6.7.8。我在Android和iOS上都运行良好,但是最近需要安装Android Studio。我为此感到紧张,因为我现有的Android支持是通过命令行安装(通过Mac上的brew)安装的,而且我认为Android Studio可能会破坏该环境。

我记录了我的JAVA_HOME和ANROID_HOME环境变量,以便在发生这种情况时可以将其重置。我安装了Android Studio,并构建了一个示例Android应用程序并对其进行了测试,所有这些工作均按预期进行。我检查了JAVA_HOME和ANDROID_HOME的值,发现它们没有更改。我还很高兴地注意到,Android Studio识别出我以前用命令行精心设置的模拟器VM。

所以我感觉很好。但是,当我尝试再次构建NativeScript项目时,我得到的只是错误。奇怪的是,错误会在调用之间改变,这很奇怪。对于失败没有给出真正的解释。奇怪的是,然后我发现我也无法为iOS构建!!安装Android Studio与THAT有什么关系?

我发现我仍然可以构建一个简单的Nativescript测试应用程序。尝试使用此方法寻找线索,但是没有找到任何线索,因此我决定通过使用tns create创建一个新项目,然后迁移应用程序文件直到发现断点来“重新开始”我的主项目。

这没什么大不了的,直到我复制了所有文件(安装了我所需要的插件)后,几乎所有文件都被复制了,除了那些名为“ settings”的目录中的文件(该目录包含了“ settings”部分的代码)该应用程序)。没有此文件夹,我可以构建和运行该应用程序(当然,没有设置功能)。仅创建文件夹“设置”就足以使构建失败。也许。问题是,如果我通过重复相同的步骤来实践疯狂的定义(尝试一下,尝试一下,再试一次,再试一次),我可以使它工作一些。我可以成功地将某些源文件成功添加到该文件夹​​中,但是随后它随后将失败,唯一可以确定的是将其回滚到没有“ settings”文件夹的位置。我什至尝试重命名“ settings”文件夹,但它似乎与该目录的名称没有魔术联系。

我添加到文件夹中的文件中的内容似乎并不重要,它们可以是.js文件或.xml文件。

报告的错误是:

Error executing Static Binding Generator: Couldn't find '/Users/sohmert/tbd/wanwan/platforms/android/build-tools/sbg-bindings.txt' bindings input file. Most probably there's an error in the JS Parser execution. You can run JS Parser with verbose logging by executing "node '/Users/sohmert/tbd/wanwan/platforms/android/build-tools/jsparser/js_parser.js' enableErrorLogging".
Detailed log here: /Users/sohmert/tbd/wanwan/platforms/android/build-tools/runSbg.log

提到的runSbg.log仅包含相同的文本,因此没有帮助。 如前所述,使用enableErrorLogging运行js_parser.js似乎也不起作用。 我已经完成了“删除node_modules / hooks / platforms /”舞步,这有时似乎有所帮助,但不是确定性的。成功/不成功似乎非常随机和反复无常。

我在build命令的末尾使用--log trace运行,也没有显示任何内容。这是从此处转储的相关部分:

16:04:21.598 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] Build operation 'Execute exec for :app:runSbg' started
16:04:21.599 [INFO] [org.gradle.process.internal.DefaultExecHandle] Starting process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java''. Working directory: /Users/sohmert/tbd/wanwan/platforms/android/build-tools Command: /Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -jar static-binding-generator.jar
16:04:21.599 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Environment for process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java'': {PATH=/usr/local/opt/node@12/bin:~/.npm-global/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin, NVM_RC_VERSION=, JAVA_MAIN_CLASS_14515=org.gradle.wrapper.GradleWrapperMain, APP_ICON_14515=/Users/sohmert/tbd/wanwan/platforms/android/media/gradle.icns, JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home, TERM=xterm-256color, LANG=en_US.UTF-8, ANDROID_HOME=/usr/local/share/android-sdk, LOGNAME=sohmert, TERM_PROGRAM_VERSION=433, PWD=/Users/sohmert/tbd/wanwan/platforms/android, XPC_SERVICE_NAME=0, NVM_CD_FLAGS=-q, SHELL=/bin/zsh, NVM_DIR=/Users/sohmert/.nvm, TERM_PROGRAM=Apple_Terminal, OLDPWD=/Users/sohmert/tbd/wanwan/platforms/android, USER=sohmert, TMPDIR=/var/folders/cw/jr7g3xr96g73y_pgrxprdg3h0000gn/T/, SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.LPNDVV0GE6/Listeners, XPC_FLAGS=0x0, TERM_SESSION_ID=2D8B360C-6A55-4F5E-84F9-4C6AC8A075D6, APP_NAME_14515=Gradle, __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, SHLVL=1, HOME=/Users/sohmert}
16:04:21.599 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: STARTING
16:04:21.599 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Waiting until process started: command '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java'.
16:04:21.602 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: STARTED
16:04:21.602 [DEBUG] [org.gradle.process.internal.ExecHandleRunner] waiting until streams are handled...
16:04:21.602 [INFO] [org.gradle.process.internal.DefaultExecHandle] Successfully started process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java''
16:04:23.015 [QUIET] [system.out] 
16:04:23.015 [QUIET] [colouredOutputLogger] Error executing Static Binding Generator: Couldn't find '/Users/sohmert/tbd/wanwan/platforms/android/build-tools/sbg-bindings.txt' bindings input file. Most probably there's an error in the JS Parser execution. You can run JS Parser with verbose logging by executing "node '/Users/sohmert/tbd/wanwan/platforms/android/build-tools/jsparser/js_parser.js' enableErrorLogging".
16:04:23.046 [QUIET] [colouredOutputLogger] Detailed log here: /Users/sohmert/tbd/wanwan/platforms/android/build-tools/runSbg.log
16:04:23.046 [QUIET] [colouredOutputLogger] 
16:04:23.047 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED
16:04:23.047 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/bin/java'' finished with exit value 1 (state: FAILED)
16:04:23.047 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] Completing Build operation 'Execute exec for :app:runSbg'
16:04:23.047 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] Build operation 'Execute exec for :app:runSbg' completed

我发现我仍然可以针对iOS进行构建,因此与我开始时相比,这是一种缓解和改进(尽管还没有尝试过放回所有文件,但是我想它会起作用)。

但是runSbg在这里做什么,为什么搞砸了?

(对我而言)更重要的是,我该如何修复或解决它?我应该在接下来的几周内发布此应用。

0 个答案:

没有答案