কমান্ড লাইনের সাহায্যে .jar ফাইলটি বের করা হচ্ছে


115

আমি একটি .jar ফাইল থেকে ফাইলগুলি বের করার চেষ্টা করছি। কমান্ড লাইন ব্যবহার করে আমি কীভাবে এটি করব?

আমি উইন্ডোজ 7 চালাচ্ছি

উত্তর:


146

ডক্স থেকে :

একটি জার ফাইল থেকে ফাইলগুলি সরাতে x, যেমনটি ব্যবহার করুন :

C:\Java> jar xf myFile.jar

একটি জার ফাইল থেকে কেবলমাত্র নির্দিষ্ট ফাইলগুলি বের করতে, তাদের ফাইলের নাম সরবরাহ করুন:

C:\Java> jar xf myFile.jar foo bar

ফোল্ডারটি jarসম্ভবত আপনার জন্য নয় C:\Java, আমার উইন্ডোজ বিভাজনে এটি:

C:\Program Files (x86)\Java\jdk[some_version_here]\bin

এর অবস্থানটি jarআপনার পথের পরিবেশের পরিবর্তনশীল না হলে আপনাকে পুরো পথটি নির্দিষ্ট করতে হবে / ফোল্ডারের ভিতরে থেকে প্রোগ্রামটি চালাতে হবে।

সম্পাদনা: এখানে আরও একটি নিবন্ধ দেওয়া হয়েছে, বিশেষত জারগুলি আহরণের উপর ফোকাস করা: http://docs.oracle.com/javase/tutorial/dep रोजगार/jar/unpack.html


ঠিক আছে, আমি যখন এই জার এক্সএফ ... কমান্ডটি করি তখন ত্রুটিটি পাওয়া যায়: 'জার' কোনও অভ্যন্তরীণ বা বাহ্যিক কমান্ড, অপারেবল প্রোগ্রাম বা ব্যাচ ফাইল হিসাবে স্বীকৃত নয়। আমি কিভাবে এটা ঠিক করব?
ববি সি

1
@ ববিসি: jar.exeফোল্ডারের ভিতরে থেকে পুরো পথ নির্দিষ্ট করুন বা এটি চালান run
অসি ব্লক

ধন্যবাদ, এখন সব ঠিক আছে!
ববি সি

2
java.io.IOException: META-INF: sun.tools.jar.Main.extractFile (Main.java:928) at sun.tools.jar.Main.extract (Main.java:852) এ সূর্যের সময় ডিরেক্টরি তৈরি করতে পারেনি .tools.jar.Main.run (Main.java:242) at sun.tools.jar.Main.main (মেইন.জভা অনুচ্ছেদ 149) কীভাবে এই ত্রুটিটি সরানো যায়?
অনিলপ্যাটেল

1
@ অ্যানিলপ্যাটেল আমি প্রশাসক হিসাবে কমান্ড প্রম্পট চালিয়ে এটি ঠিক করেছি ("প্রশাসক হিসাবে চালান" রাইট ক্লিক করুন)
জেসিয়েলো

34

নোট করুন যে একটি জার ফাইলটি একটি জিপ ফাইল এবং যে কোনও জিপ সরঞ্জাম (যেমন 7-জিপ) জারের ভিতরে দেখতে পারে।


6
দয়া করে এখানে দেখুন, আপনার সকলের এটিই প্রয়োজন।
আলী

28

উবুন্টুতে:

unzip file.jar -d dir_name_where_extracting


1
যেসব সিস্টেমের jarকমান্ড নেই তাদের জন্য কার্যকর! CentOS 5.7
djthoms

8

আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন: jar xf rt.jar

যেখানে Xএক্সট্রাকশনের জন্য দাঁড়িয়েছে এবং fযে কোনও বিকল্প রয়েছে যা ইঙ্গিত করে যে JAR ফাইল থেকে ফাইলগুলি বের করতে হবে তা স্ট্যান্ডিনের পরিবর্তে কমান্ড লাইনে নির্দিষ্ট করা হয়েছে।


2

জাভাতে একটি ক্লাস রয়েছে বিশেষত জিপ ফাইলগুলির জন্য এবং আরও একটি বিশেষভাবে জার ফাইলগুলির জন্য।

java.util.jar.JarOutputStream
java.util.jar.JarInputStream

কনসোল থেকে প্রাপ্ত কমান্ডের সাহায্যে, সিস্টেম.ইনে স্ক্যানার সেট করে আপনি যা ব্যবহার করতে পারেন

Scanner console = new Scanner(System.in);
String input = console.nextLine();

তারপরে সমস্ত উপাদানগুলি পান এবং একটি ফাইল হিসাবে তাদের লিখুন।

JarEntry JE = null;
while((JE = getNextJarEntry()) != null)
{
    //do stuff with JE
}

আপনি এর পরিবর্তে java.util.zip.ZipInputStream ব্যবহার করতে পারেন, যেমন একটি JAR ফাইলটি একটি জিপ ফাইলের মতো একই ফর্ম্যাটে রয়েছে, জিপআইপুট স্ট্রিম জার ফাইলটি হ্যান্ডেল করতে সক্ষম হবে, বাস্তবে জারি ইনপুটস্ট্রিমটি জিপআইপুট স্ট্রিমটি প্রসারিত করে।

getNextEntry ব্যবহার করার জন্য getNextJarEntry এর পরিবর্তে বিকল্পও রয়েছে


2

jar xf myFile.jar
আপনার ফাইলের নামে আমার ফাইলে পরিবর্তন
করুন
এটি করা উচিত ফাইলের বর্তমান ফোল্ডারে থাকা সামগ্রীগুলি সংরক্ষণ করবে :)


0

মি। জার নামের একটি ফাইল দিয়েছেন:

  1. সেন্টিমিটারে যান
  2. প্রবেশ করুন
  3. জাভা jarকমান্ডটি ব্যবহার করুন - আমি jdk1.8.0_31 ব্যবহার করছি তাই আমি টাইপ করব

    সি: \ প্রোগ্রাম ফাইল (x86) \ জাভা \ jdk1.8.0_31 \ বিন \ জার xf me.jar

এটি ফোল্ডার বিনটিতে ফাইলটি বের করা উচিত। ফাইলটি দেখুন। ক্লাসের ক্ষেত্রে আমার ক্ষেত্রে আমার Me.jar এ একটি ভ্যালেন্টাইন.class রয়েছে

প্রকার java Valentineও Enter টিপুন এবং আপনার বার্তা ফাইল খোলা হবে।


-3

নির্দিষ্ট ফোল্ডারে জারটি বের করতে কমান্ড প্রম্পটের মাধ্যমে এই কমান্ডটি ব্যবহার করুন

C:\Java> jar xf myFile.jar -C "C:\tempfolder"

7
এটি কাজ করে না। -Cজার ফাইল তৈরি করার সময় কেবলমাত্র ব্যবহৃত হতে পারে।
unwichtich

@ ইউনুইচটিচ সে ক্ষেত্রে গন্তব্য ফোল্ডার নির্দিষ্ট করার কোনও উপায় আছে কি?
লাইন

2
লিনাক্স সিস্টেমগুলিতে আপনি unzip file.jar -d dir_name_where_extractingউইন্ডোতে আপনার
জেআরটিকে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.