2016-01-19 6 views
1

У меня возникают проблемы при создании моего проекта Codename One для Windows Phone.
У меня было 3 попытки: 2 не удалось и 1 был застрял на фазе сборки более часа, и я решил отменить его. Я загрузил журналы ошибок для неудачных попыток (файлы были более 60 М, и я заметил это слишком поздно, поэтому извините за использование полосы пропускания вашего сервера). Вот выдержка (размеры файлов больше, чем 60M) из журнала последней ошибки (2f361a99-589d-4e29-9e6d-14d22b1cacc3-1453240937030-error.txt/Tue Jan 19 2016 23:46:42 GMT+0200 (FLE Standard Time)):Codename One Windows Phone Build Fail

Executing: java -Xmx1024m -jar win_xmlvm.jar --in=C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\classes --resource=C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\ApplicationCN1\ApplicationCN1\res/ --out=C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\ApplicationCN1\ApplicationCN1\src --target=csharp --app-name=ApplicationCN1 [01/19/16 23:47:19.038] ERROR: Couldn't create node for com.codename1.impl.ImplementationFactory 
[01/19/16 23:47:19.038] ERROR: Couldn't create node for com.codename1.impl.ImplementationFactory 

...classes... 
...lots of warnings about hidden inherited members... 

"C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\ApplicationCN1\ApplicationCN1.sln" (default target) (1) -> 
"C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\ApplicationCN1\ApplicationCN1\ApplicationCN1.csproj" (default target) (2) -> 
(CoreCompile target) -> 
    src\com\yyy\yyy\DialogForm.cs(1133,5): error CS1511: Keyword 'base' is not available in a static method [C:\Users\Shai\AppData\Local\Temp\build6825805865501307423xxx\ApplicationCN1\ApplicationCN1\ApplicationCN1.csproj] 

    130875 Warning(s) 
    1 Error(s) 

Time Elapsed 00:07:44.77 

Моя конфигурация:

Windows 7 SP1 x64; 
Java SE Development Kit 7 Update 45 (64-bit); 
Eclipse IDE for Java Developers, Version: Luna Service Release 2 (4.4.2), Build id: 20150219-0600; 
Plugin: CodenameOneFeature 1.0.0.201511241324; 

Содержание моего codenameone_settings.properties:

# 
#Mon Jan 18 16:05:13 EET 2016 
codename1.vendor=yyy 
codename1.displayName=yyy 
codename1.icon=icon.png 
codename1.languageLevel=5 
codename1.secondaryTitle=yyy 
codename1.version=0.4 
codename1.mainName=ApplicationCN1 
codename1.ios.certificatePassword= 
codename1.rim.signtoolDb= 
libVersion=97 
codename1.ios.certificate= 
codename1.arg.j2me.nativeThemeConst=3 
codename1.arg.ios.add_libs=CFNetwork.framework 
codename1.arg.android.debug=false 
codename1.arg.android.release=true 
codename1.j2me.nativeTheme= 
codename1.rim.signtoolCsk= 
codename1.rim.certificatePassword= 
codename1.ios.provision= 
codename1.packageName=com.yyy.yyy 

Что я делаю неправильно?

ответ

0

Возможно, у вас есть поле или метод с именем base, а наш старый бэкэнд на базе XMLVM недостаточно умен, чтобы справиться с этим (зарезервированное слово в C#).

Просто переименуйте это на данный момент, а также посмотрите размер проекта.

В настоящее время мы работаем над переписанием виртуальной машины Windows Phone/port, поэтому это и многие другие проблемы не будут существовать, когда мы закончим. Начиная с его почти полной перезаписи (мы, вероятно, будем частично ее основывать на community port), это может занять некоторое время.

+0

Я проверил на предмет наличия «базового» слова в своем коде перед тем, как задать этот вопрос. Похоже, что проблема скорее связана с использованием ключевого слова «супер» в статических методах. Возможно ли получить полученную 'src \ com \ yyy \ yyy \ DialogForm.cs' для моей сборки? Спасибо за отличную работу! – McSym28

+0

Возможно, что порт XMLVM C# довольно проблематичен. К сожалению, получение источников неудачных сборок довольно сложно сделать, поскольку у нас есть много глубоких предположений в коде проекта против этого. Это то, что нам нужно сделать в какой-то момент, и я думаю, что в этом вопросе есть RFE. –