2016-06-02 2 views
4

Я создал простой пример приложения с CodeNameOne без каких-либо изменений. Файл сертификата и Provisioning доступен и настроен как свойства проекта.CodeName Одна ошибка: не удается найти символ

IDE: Eclipse, Desktop ОС: Windows

Executing 'Send IOS Debug Build' starts the server build and shows the following error: /var/folders/p7/d3z112yd0156kxkm2p21p8ym0000gn/T/build5327647990993852705xxx/stub/TestBuildDeployStub.java /var/folders/p7/d3z112yd0156kxkm2p21p8ym0000gn/T/build5327647990993852705xxx/stub/TestBuildDeployStub.java:14: error: cannot find symbol private TestBuildDeploy i; ^symbol: class TestBuildDeploy location: class TestBuildDeployStub /var/folders/p7/d3z112yd0156kxkm2p21p8ym0000gn/T/build5327647990993852705xxx/stub/TestBuildDeployStub.java:23: error: cannot find symbol i = new TestBuildDeploy(); ^symbol: class TestBuildDeploy location: class TestBuildDeployStub Note: /var/folders/p7/d3z112yd0156kxkm2p21p8ym0000gn/T/build5327647990993852705xxx/stub/TestBuildDeployStub.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details. 2 errors

Это класс Java:

package com.canda.mario.myapp; 


import com.codename1.ui.Display; 
import com.codename1.ui.Form; 
import com.codename1.ui.Dialog; 
import com.codename1.ui.Label; 
import com.codename1.ui.plaf.UIManager; 
import com.codename1.ui.util.Resources; 
import com.codename1.io.Log; 
import com.codename1.ui.Toolbar; 
import java.io.IOException; 

/** 
* This file was generated by <a href="https://www.codenameone.com/">Codename One</a> for the purpose 
* of building native mobile applications using Java. 
*/ 
public class TestBuildDeploy { 

    private Form current; 
    private Resources theme; 

    public void init(Object context) { 
     theme = UIManager.initFirstTheme("/theme"); 

     // Enable Toolbar on all Forms by default 
     Toolbar.setGlobalToolbar(true); 

     // Pro only feature, uncomment if you have a pro subscription 
     // Log.bindCrashProtection(true); 
    } 

    public void start() { 
     if(current != null){ 
      current.show(); 
      return; 
     } 
     Form hi = new Form("Hi World"); 
     hi.addComponent(new Label("Hi World")); 
     hi.show(); 
    } 

    public void stop() { 
     current = Display.getInstance().getCurrent(); 
     if(current instanceof Dialog) { 
      ((Dialog)current).dispose(); 
      current = Display.getInstance().getCurrent(); 
     } 
    } 

    public void destroy() { 
    } 

} 
+0

Если я использую демо-приложение DrSbaitso и переименую пакет из com.codename1.demos.sbaitso в com.canda.mario.myapp, я получаю ту же ошибку для DrSbaitso.class? Любые идеи – Mario

ответ

4

При изменении пакета/класса в Codename One приложения после его создания вам нужно измените его везде как в проекте, так и в codenameone_settings.properties, поэтому мы рекомендуем его никогда не менять.

Мы не делаем этот процесс легким, так как вы женаты на жизнь при создании имени пакета. Это используется, чтобы однозначно идентифицировать вас в магазинах и не может быть изменено с момента подачи приложения, поэтому вам нужно понять, что это не то, что вам следует делать ... Дайте имя пакета глубокому рассмотрению перед созданием приложения!

+0

Если вам нужно изменить имя пакета, кроме файла 'codenameone_settings.properties' и пакетов java (например,' com.myapp.example', есть ли где-нибудь еще, чтобы изменить имя пакета? – Schreiby

+0

Это зависит от ваша IDE, но в целом она должна выглядеть так: https://www.codenameone.com/blog/deploy-same-mobile-app-template-multiple-times.html –

Смежные вопросы