سؤال

لدي تطبيق ويب أساسي (مشروع الويب الديناميكي في الكسوف) مع مشروع الأذن المرتبط. أحاول التأكد من أن رمز اختبار Junit الخاص بي يبقى خارج ملف الأذن للنشر.

في مشروع الويب الخاص بي، لدي مجلد مصدر يسمى "SRC" وواحد يسمى "اختبار". أحتاج إلى الحفاظ على ملفات .class من مجلد المصدر "اختبار" من الأذن عند تصديره باستخدام الكسوف.

أعلم أن هذا هو تافهة باستخدام النمل ولكن يبدو مستحيلا باستخدام Eclipse .. انقر بزر الماوس الأيمن فوق مشروع وتصدير ملف الأذن .. يتم تضمين فئات الاختبار دائما.

إذا قمت بالتحرير يدويا. Setting / Org.eclipse.wst.common.commonent.xml.

هل أفتقد شيئا واضحا .. لقد غوتشن مثل مجنون دون جدوى .. فحص مستندات الكسوف وأنا في خسارة ..

هل كانت مفيدة؟

المحلول

لا يبدو أنه ممكن بشكل مباشر، وهو غريب. إليك بضع حلول يمكن أن تحاول.

ملاحظة سأحرك ملفات Java من مشروع الويب إلى مشروع Java (ربما تكون هذه ممارسة جيدة لمتابعة أي حال). إما أن تخلق مشروع جافا "اختبار" آخر ونقل مصادر الاختبار إلى هذا المشروع. يعلن مشروع الاختبار الخاص بك مشروع جافا "الرئيسي" باعتباره اعتمادا لذلك يتمكن من الوصول إلى أنواع الاختبار، ولكنه غير مدرج في الحرب، لذلك لن يتم نشر فئات الاختبار.

بدلا من ذلك، إذا كنت ترغب في الحفاظ على المصادر في مشروع واحد، يمكنك تكوين مشروع الاختبار لاستخدام الموارد المرتبطة. لقد نشرت إجابة أخرى هذا يدل على كيفية استخدام موارد مرتبطة بمشاركة مواقع المصدر عبر المشاريع. مع هذا النهج، لا تزال مصادر الاختبار ليست في مسار البناء للمشروع الرئيسي، لذلك لن يتم تجميعها في الجرة، ولكن موجودا جسديا في المشروع، لذلك فإن التحكم المصدر أكثر بساطة.

نصائح أخرى

أنا أفعل شيئا مشابها، إلا مع PDE، باستخدام Eclipse 3.7. أنا نشر eclipse / osgi الإضافات / حزم، ولها أدلة مصدر جافا: SRC واختبار

لقد اخترت محتويات اثنين من ملفات مشروع Eclipse لفصل رمز الاختبار من الإنشاء.

.classpath.:

<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry export="false" kind="src" path="test"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry export="false" kind="lib" path="/thirdparty/junit/junit.jar"/>
    <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

كانت هذه التغييرات مدفوعة بالقراءة هذه

لا أعرف إذا كان هذا سوف ينطبق على وضعك، لكني اضطررت أيضا لتعديل build.properties. ملف، لاستبعاد نتائج ترجمة "اختبار" من ملف جرة المنتج.

source.optimizing.jar = src/
#This doesn't contain test/ because we don't want it in the build.

bin.includes = META-INF/,\
               optimizing.jar
#The junit.jar is also exluded               

عندما أقوم ببناء المشروع بأكمله، فإن ملفات الاختبار غائبة تماما.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top