天天看點

cocos2d-x打包的時候出現空指針的問題,An error has occurred. See error log for more details. java.lang.NullPointerE

最近在用cocos2dx 3.x版本做android版本的時候,出現點選工程-屬性-C/C++ builder的時候會提示

The currently displayed paye contains invalid values

或者

An error has occurred. See error log for more details.

java.lang.NullPointerException

解決辦法是打開proj.android下面的 ".cproject"檔案,可以看到裡面是這裡内容:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">

<storageModule moduleId="org.eclipse.cdt.core.settings">

<cconfiguration id="0.1230402123">

<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.1230402123" moduleId="org.eclipse.cdt.core.settings" name="Release">

<externalSettings/>

<extensions>

<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

</extensions>

</storageModule>

<storageModule moduleId="cdtBuildSystem" version="4.0.0">

<configuration artifactName="${ProjName}" buildProperties="" description="" id="0.1230402123" name="Release" parent="org.eclipse.cdt.build.core.prefbase.cfg">

<folderInfo id="0.1230402123." name="/" resourcePath="">

<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.1911072326" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">

<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.1911072326.2087917918" name=""/>

<builder arguments="${ProjDirPath}/build_native.py -b release" buildPath="${ProjDirPath}" command="python" id="org.eclipse.cdt.build.core.settings.default.builder.1038735572" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder">

<outputEntries>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="outputPath" name=""/>

</outputEntries>

</builder>

<tool id="org.eclipse.cdt.build.core.settings.holder.libs.547532631" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>

<tool id="org.eclipse.cdt.build.core.settings.holder.1481118451" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.990682174" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.387417389" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.992559344" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

<tool id="org.eclipse.cdt.build.core.settings.holder.429561268" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.1008860290" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

<listOptionValue builtIn="false" value="${NDK_ROOT}/platforms/android-18/arch-arm/usr/include"/>

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/4.8/include"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/2d"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/physics"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/base"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/math/kazmath"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/ui"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/network"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/audio/include"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/editor-support"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/extensions"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/external"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/external/chipmunk/include/chipmunk"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.1728671637" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.788524757" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

<tool id="org.eclipse.cdt.build.core.settings.holder.795443271" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.315092538" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.706119994" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1846971482" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

</toolChain>

</folderInfo>

<sourceEntries>

<entry excluding="Classes|cocos2d" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Classes"/>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="cocos2d"/>

</sourceEntries>

</configuration>

</storageModule>

<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>

</cconfiguration>

<cconfiguration id="0.1377291156">

<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.1230402123.1377291156" moduleId="org.eclipse.cdt.core.settings" name="Debug">

<externalSettings/>

<extensions>

<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

</extensions>

</storageModule>

<storageModule moduleId="cdtBuildSystem" version="4.0.0">

<configuration artifactName="${ProjName}" buildProperties="" description="" id="0.1230402123.1377291156" name="Debug" parent="org.eclipse.cdt.build.core.prefbase.cfg">

<folderInfo id="0.1230402123.1377291156." name="/" resourcePath="">

<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.201833538" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">

<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.201833538.235980614" name=""/>

<builder arguments="${ProjDirPath}/build_native.py -b debug" buildPath="${ProjDirPath}" command="python" id="org.eclipse.cdt.build.core.settings.default.builder.1949248716" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder">

<outputEntries>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="outputPath" name=""/>

</outputEntries>

</builder>

<tool id="org.eclipse.cdt.build.core.settings.holder.libs.813839891" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>

<tool id="org.eclipse.cdt.build.core.settings.holder.766422923" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.658464030" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.402466199" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.930232989" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

<tool id="org.eclipse.cdt.build.core.settings.holder.55647957" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.814113654" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

<listOptionValue builtIn="false" value="${NDK_ROOT}/platforms/android-18/arch-arm/usr/include"/>

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/4.8/include"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/2d"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/physics"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/base"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/math/kazmath"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/ui"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/network"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/audio/include"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/cocos/editor-support"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/extensions"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/external"/>

<listOptionValue builtIn="false" value="${ProjDirPath}/../cocos2d/external/chipmunk/include/chipmunk"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.923561092" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.383151501" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

<tool id="org.eclipse.cdt.build.core.settings.holder.2139448747" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">

<option id="org.eclipse.cdt.build.core.settings.holder.incpaths.715095106" name="Include Paths" superClass="org.eclipse.cdt.build.core.settings.holder.incpaths" valueType="includePath">

<listOptionValue builtIn="false" value="${NDK_ROOT}/sources/android/native_app_glue"/>

</option>

<option id="org.eclipse.cdt.build.core.settings.holder.symbols.157274928" name="Symbols" superClass="org.eclipse.cdt.build.core.settings.holder.symbols" valueType="definedSymbols">

<listOptionValue builtIn="false" value="CC_TARGET_PLATFORM=CC_PLATFORM_ANDROID"/>

<listOptionValue builtIn="false" value="CC_DLL"/>

</option>

<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.108662290" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>

</tool>

</toolChain>

</folderInfo>

<sourceEntries>

<entry excluding="Classes|cocos2d" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Classes"/>

<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="cocos2d"/>

</sourceEntries>

</configuration>

</storageModule>

<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>

</cconfiguration>

<cconfiguration id="0.1230402123.1377291156">

<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.1230402123.1377291156" moduleId="org.eclipse.cdt.core.settings" name="Debug">

<externalSettings/>

<extensions>

<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

</extensions>

</storageModule>

<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>

</cconfiguration>

</storageModule>

<storageModule moduleId="scannerConfiguration">

<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>

<scannerConfigBuildInfo instanceId="0.1230402123">

<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>

</scannerConfigBuildInfo>

</storageModule>

<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>

<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>

<storageModule moduleId="cdtBuildSystem" version="4.0.0">

<project id="ailisi7.null.31159645" name="ailisi7"/>

</storageModule>

<storageModule moduleId="refreshScope" versionNumber="2">

<configuration configurationName="Default">

<resource resourceType="PROJECT" workspacePath="/ailisi7"/>

</configuration>

<configuration configurationName="Debug">

<resource resourceType="PROJECT" workspacePath="/ailisi7"/>

</configuration>

</storageModule>

</cproject>

然後把裡面的這一部分代碼删除,删除包含org.eclipse.cdt.managedbuilder.core.configurationDataProvider的cconfiguration塊:

<cconfiguration id="0.1230402123.1377291156">

<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.1230402123.1377291156" moduleId="org.eclipse.cdt.core.settings" name="Debug">

<externalSettings/>

<extensions>

<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>

</extensions>

</storageModule>

<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>

</cconfiguration>

儲存後即可,原因未知,我在eclipse中建立android工程時沒有問題的,

但是倒入cocos2dx打包的時候就有這個問題,我也不知道什麼情況,有知道的歡迎回複

一下,特此記錄一下,非常感謝這位作者的參考,才解決了一直困擾我的問題。

源位址:http://www.th7.cn/Program/java/201410/290601.shtml

繼續閱讀