2013-04-14 7 views
7

के लिए कोई स्रोत कोड उपलब्ध नहीं है, मैं अपना एचटीएमएल प्रोजेक्ट शुरू करने की कोशिश कर रहा हूं लेकिन मुझे कुछ समस्याएं आ रही हैं। डेस्कटॉप और एंड्रॉइड प्रोजेक्ट अच्छी तरह से काम करते हैं। समस्या यह है कि मेरे पास एक अन्य प्रोजेक्ट है जिसका उपयोग मैं पुस्तकालय के रूप में करता हूं जिसे आयात या कुछ नहीं किया जा रहा है।LibGdx और Gwt:

[ERROR] [com.mobilecostudios.walkingskeleton.GwtDefinition] - Errors in 'file:/C:/Users/chelo/Documents/mobilecostudios-libgdx/trunk/walkingskeleton/WalkingSkeleton/src/com/mobilecostudios/walkingskeleton/GameLoop.java' 
[ERROR] [com.mobilecostudios.walkingskeleton.GwtDefinition] - Line 21: No source code is available for type com.mobilecostudios.gamelibrary.Domain.BaseSprite; did you forget to inherit a required module? 

मेरे परियोजना पदानुक्रम है:

  • GameDevLibrary
  • WalkingSkeleton
  • WalkingSkeleton-एचटीएमएल

मेरे gwt.xml है:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd"> 
<module> 
    <inherits name='com.badlogic.gdx.backends.gdx_backends_gwt' /> 
    <inherits name='GameLoop' /> 
    <entry-point class='com.mobilecostudios.walkingskeleton.client.GwtLauncher' /> 
    <set-configuration-property name="gdx.assetpath" value="../WalkingSkeleton-android/assets" /> 
</module> 

मैंने पहले से ही निर्माण पथ के लिए प्रक्षेपण जोड़ा है। मुझे और क्या याद आ रहा है?

पथ बिल्ड enter image description here

उत्तर

6

आप यह सुनिश्चित करें कि आप भी अपने रास्ते पर परियोजना के स्रोत कोड जोड़ने करना है। क्लाइंट साइड का उपयोग करने वाले किसी भी जीडब्ल्यूटी जावा मॉड्यूल को इसके स्रोत कोड उपलब्ध होने की आवश्यकता है।

आपके मामले में,

<inherits name='GameLoop' /> 

होना चाहिए:

<inherits name='com.mobilecostudios.walkingskeleton.GameLoop' /> 

इसके अलावा, जहां com.mobilecostudios.gamelibrary.Domain.BaseSprite से आता है? यदि इसका उपयोग क्लाइंट पक्ष है तो आपको इसे मॉड्यूल .gwt.xml फ़ाइल में जोड़ने की आवश्यकता है। की तरह कुछ होना चाहिए:

<inherits name='com.mobilecostudios.gamelibrary.GameLibrary' /> 

ऊपर, मैं यह सोचते हैं कि GameLibrary.gwt.xml परियोजना है कि com.mobilecostudios.gamelibrary.Domain.BaseSprite शामिल GWT मॉड्यूल एक्सएमएल फ़ाइल है।

असल में, जब आप क्लाइंट पक्ष पर अपने स्वयं के प्रोजेक्ट में बाहरी जीडब्ल्यूटी मॉड्यूल का उपयोग करना चाहते हैं तो आपको अपने बिल्ड पथ में स्रोतों और बाइनरी जोड़कर इसे अपने प्रोजेक्ट में आयात करने की आवश्यकता है और आपको <inherits name='...'> जोड़ने की भी आवश्यकता है आपकी परियोजना की आपकी .gwt.xml फ़ाइल।

+0

मुझे और रास्ता कहां जोड़ना चाहिए? –

+0

मैंने अपना जवाब अपडेट किया। मुझे यह बताना मुश्किल लगता है कि वास्तव में क्या हो रहा है। आप किस परियोजना को आयात करने की कोशिश कर रहे हैं? जीडब्ल्यूटी मॉड्यूल में 'com.mobilecostudios.gamelibrary.Domain.BaseSprite' आयात किया गया है? – enrybo

3

परियोजनाओं एक से अधिक पैकेज है कि आप हर पैकेज के लिए एक .gwt.xml जोड़ने के लिए के लिए प्रयोग कर रहे हैं कि:
add an xml for every package

के रूप में आप ऊपर चित्र में देख सकते हैं मैं controller.gwt.xml जोड़ने वस्तुओं के लिए और इतने पर ... और इन .gwt.xml फ़ाइलों के अंदर नियंत्रक objects.gwt.xml के लिए आप कुछ इस तरह लिखना चाहिए:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd"> 
<module> 
    <source path="com/me/controller" /> 
</module> 

उदाहरण के लिए यह मेरा controller.gwt.xml तो एक जोड़ है इस तरह की GwtDefinition.gwt.xml फ़ाइल में टैग प्राप्त करें:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd"> 
<module> 
    <inherits name='com.badlogic.gdx.backends.gdx_backends_gwt' /> 
    <inherits name='MyGdxGame' /> 
    <inherits name='objects' /> 
    <inherits name='settings' /> 
    <inherits name='controller' /> 
    <entry-point class='com.me.mygdxgame.client.GwtLauncher' /> 
    <set-configuration-property name="gdx.assetpath" value="../cannongame-android/assets" /> 
</module>