PDA

View Full Version : مشکل در ساختن فایل jar



yegane8
چهارشنبه 18 مرداد 1391, 19:15 عصر
سلام
من می خوام فایل jar یک برنامه رو درست کنم و براش کلاس main هم انتخاب کردم و وقتی run میکنم درست اجرا میشه اما وقتی clean & build رو می زنم این خطا رو میده :
warning: unreachable catch clause
} catch (IOException ex) {
thrown type FileNotFoundException has already been caught
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 warning
و فلدر dist هم درست میشه اما با زدن فایل jat این پیغام داده میشه :
could not find the main class NAMECLASS .program will exit.
باید چی کار کنم ؟
باتشکر

spiderman200700
چهارشنبه 18 مرداد 1391, 21:10 عصر
سلام
چون نمیدونم کلاس main برنامه چطوری نوشته شده، تنها راهی که میتونم بهتون بگم تا شاید کارساز باشه اینه:
فایل jar رو با استفاده از برنامه winrar باز کنید و از داخل پوشه ی META-INF فایل MANIFEST.MF رو با استفاده از notepad باز کن.
جلوی خط Main-Class: ، اسم کامل کلاس اصلیت رو همراه با نام پکیج هاش بنویس و فایل رو دوباره جایگزین فایل MANIFEST.MF قبلی کن.
اینجوری به احتمال خیلی زیاد درست میشه

yegane8
چهارشنبه 18 مرداد 1391, 21:43 عصر
حل نشد اولش این بودMain-Class: classNameمن اینو نوشتم Main-Class:className default package حالا میگه ould not find the main class ClassName default package .program will exit.
تو کلاس main و تو متد main فقط یک کلاس JFrame رو ازش object گرفتم و اوون frame رو SetVisible کردم
مشکل از چیه ؟
باتشکر

spiderman200700
چهارشنبه 18 مرداد 1391, 22:13 عصر
default package رو ننویس
فقط اسم کلاس رو بنویس
ببین میشه یا نه

yegane8
پنج شنبه 19 مرداد 1391, 02:44 صبح
نه نشد :گریه:

spiderman200700
پنج شنبه 19 مرداد 1391, 13:08 عصر
ببین. اگه اسم کلاس اصلیت Start هست و این کلاس توی پکیج Main قرار داره، باید اینطوری بنویسی :
Main-Class: Main.Start
اگه Start توی default package قرار داره، باید اینجوری بنویسی:
Main-Class: Start

yegane8
پنج شنبه 19 مرداد 1391, 18:05 عصر
کاری که فرمودید رو انجام دادم
این دفعه این پیام رو داد :
fatal exception occurred.program will exit
:متفکر:

spiderman200700
پنج شنبه 19 مرداد 1391, 22:53 عصر
اگه میشه محتویات MANIFEST.MF رو اینجا بذارید که ببینم. و بگبد که کلاسی که توش متد main وجود داره اسمش چیه و توی چه پکیج هایی قرار داره.

yegane8
جمعه 20 مرداد 1391, 00:07 صبح
کلاس englishLearning همون کلاس main هست
http://up.vatandownload.com/images/zbftc8y11oqwq4qgzlw3.png
محتویات MANIFEST.MF :
http://up.vatandownload.com/images/fnz6tu3s8djhpeqio9m0.png

spiderman200700
جمعه 20 مرداد 1391, 14:51 عصر
فقط خط آخر رو پاک کنید و اینجوری بنویسید:
Main-Class: EnglishLearning
امیدوارم با این درست بشه

yegane8
جمعه 20 مرداد 1391, 19:22 عصر
ممنون اما اول اولش هم همین بود با این وجود من تغییر دادم بازم همون پیام :

could not find the main class NAMECLASS .program will exit.
رو می ده
ممکنه به خاطر این که اسم کلاس main ام با اسم project ام یکی هست این مشکل به وجود اوومده باشه ؟

yegane8
شنبه 21 مرداد 1391, 08:05 صبح
مشکل می تونه از این باشه که من تو برنامم از یه سری فایل که وجود دارند رو هارد استفاده می کنم و هیچ فایلی رو تو برنامه ایجاد نمی کنم ؟
اگه اینطوره لطفا راهنمایی کنید برای رفع این مشکل چی کار کنم ؟
وقتی clean & build رو می زنم تو خروج این تیکه رو قرمز می نویسه :

Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

باتشکر

spiderman200700
شنبه 21 مرداد 1391, 13:11 عصر
نه نبايد مشکل از اين باشه.ولي حالا شما اين فايل ها رو داخل پوشه برنامه بذار و ازشون استفاده کن شايد درست بشه.
در اين جور مواقع مشکل خيلي کوچيک ولي تاثير گذاره.معمولا بايدخيلي با دقت کدها رو بررسي کرد و ديد که کجاي کدها داره خطاي I/O اتفاق ميفته.