ডেমনের মেয়াদ শেষ হচ্ছে কারণ জেভিএম হিপ স্পেস শেষ


91

আমি সবেমাত্র অ্যান্ড্রয়েড স্টুডিওকে 3.5 বিটা 1 এ আপডেট করেছি এবং আমি পাচ্ছি

ডেমনের মেয়াদ শেষ হচ্ছে কারণ জেভিএম হিপ স্পেস শেষ

বিল্ড চলমান অবস্থায় বার্তা। এছাড়াও, বিল্ডটি সম্পূর্ণ হতে আরও সময় নিচ্ছে। কারও কি এ সম্পর্কে কোন ধারণা আছে?


4
এখানে দেখুন যে যদি সাহায্য করে: stackoverflow.com/questions/47207126/...
Juraj Martinka

4
@ জুরজমার্টিনকা হ্যাঁ, আপনি ঠিক বলেছেন। এটি আইডিই সর্বাধিক হ্যাপের আকার বাড়ানোর পরে ঠিক হয়ে গেছে । তাই তারা সর্বশেষতম অ্যান্ড্রয়েড স্টুডিও 3.5 তে মেমরি সেটিংস নামে একটি নতুন বিকল্প প্রবর্তন করে । অ্যান্ড্রয়েড স্টুডিওতে মেমরি ফুটো ঠিক করার জন্য এটি করা হয়েছে done
habষভ সাগর

উত্তর:


97

আমি নিম্নলিখিতটি কনফিগার করে আমার প্রতিক্রিয়া নেটিভ প্রকল্পের জন্য এটি সমাধান করতে সক্ষম হয়েছি :

// gradle.properties
org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

এবং

// app/build.gradle
android {
    dexOptions {
       javaMaxHeapSize "3g"
    }
}

4
আমাকে সাহায্যের জন্য @ ম্যাটবুথ থানেক্স
দিশন্ত চাঁচাদ

4
যখন আমি এই কোডটি যুক্ত করেছি, দেশ-ভেক্টর-আইকনগুলি প্রতিক্রিয়া জানায় সঠিকভাবে কাজ করে না।
আমির গর্জি

86

প্রকল্পের জন্য কনফিগার করা সর্বোচ্চ গাদা আকার বাড়িয়ে এটি স্থির করা যেতে পারে ।

আইডিই এর মাধ্যমে:

গ্রেড.প্রোপার্টি ফাইলগুলিতে নীচের লাইনগুলি যুক্ত করুন। র্যামের উপলব্ধতার উপর ভিত্তি করে মেমরির নীচের আকারটি কনফিগার করা যেতে পারে

org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2560m

জিইউআইয়ের মাধ্যমে:

সেটিংসে, 'মেমরি সেটিংস' অনুসন্ধান করুন এবং সিস্টেমের র‌্যামের উপলভ্যতা অনুসারে আইডিই সর্বাধিক হিপ আকার এবং ডিমন ম্যাক্স হ্যাপের আকার বাড়ান ।

অ্যান্ড্রয়েড স্টুডিওতে মেমরি সেটিংস


FWIW org.gradle.daemon ডিফল্ট সত্য হিসাবে তাই লাইন প্রয়োজন হয় না।
Smalls

22

সমাধানটি হ'ল অ্যান্ড্রয়েড বিল্ড মেমরি বাড়ানো।

আপনি আপনার অ্যাপ্লিকেশনে আরও মডিউল যুক্ত করার সাথে সাথে অ্যান্ড্রয়েড বিল্ড সিস্টেমে একটি অবিশ্বাস্য চাহিদা রয়েছে এবং ডিফল্ট মেমরি সেটিংস কাজ করবে না। অ্যান্ড্রয়েড বিল্ড চলাকালীন আউটঅফমিউরি এরিয়াসগুলি এড়াতে আপনার /android/gradle.properties এ উপস্থিত বিকল্প গ্রেড মেমরি সেটিংটিকে অস্বচ্ছল করা উচিত :

org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

আপনি অ্যান্ড্রয়েড ফোল্ডারের অভ্যন্তরে গ্রেড.প্রোপার্টিগুলি খুঁজে পেতে পারেন ।

পুনশ্চ

আমরা এটি কি করছি এবং এটি কেন সহায়তা করে?

পুরো বিষয়টি বোঝার জন্য আমাকে কিছু প্রাথমিক পরিভাষা পরিষ্কার করতে দিন।

ডেমন : - একটি ডেমন একটি কম্পিউটার প্রোগ্রাম যা একটি ইন্টারেক্টিভ ব্যবহারকারীর প্রত্যক্ষ নিয়ন্ত্রণে না হয়ে পটভূমি প্রক্রিয়া হিসাবে চলে।

অ্যান্ড্রয়েড স্টুডিও ২.১ একটি নতুন বৈশিষ্ট্য সক্ষম করে: ডেক্স ইন প্রসেস , যা তাত্ক্ষণিক রান পারফরম্যান্সের উন্নতির পাশাপাশি পুরো ক্লিন বিল্ডগুলির গতি নাটকীয়ভাবে বাড়িয়ে তুলতে পারে।

সুবিধা নেওয়ার জন্য Dex প্রক্রিয়া , আপনি আপনার gradle.properties ফাইল পরিবর্তন করুন এবং বরাদ্দ মেমরি পরিমাণ বৃদ্ধি করতে হবে Gradle ডেমন VM- র org.gradle.jvmargs সম্পত্তি ব্যবহার করে, 2 GB এর ন্যূনতম 1 গিগাবাইট দ্বারা, :

ডেমন প্রক্রিয়াটির জন্য ব্যবহৃত JVM আর্গুমেন্ট নির্দিষ্ট করে। মেমরি সেটিংস টুইট করার জন্য সেটিংসটি বিশেষভাবে কার্যকর।

org.gradle.jvmargs=-Xmx2048m

ডিফল্ট মান:

-Xmx10248m -XX:MaxPermSize=256m

ডিফল্ট গ্রেডল ডিমন ভিএম মেমরির বরাদ্দটি 1 গিগাবাইট - যা ডেক্সআইনপ্রসেস সমর্থন করার পক্ষে অপর্যাপ্ত, সুতরাং সুবিধা নেওয়ার জন্য আপনাকে এটি কমপক্ষে 2 গিগাবাইটে সেট করতে হবে।

প্রক্রিয়ায় ডেক্স একাধিক ডেক্স প্রসেসকে একক ভিএম এর মধ্যে চালানোর অনুমতি দিয়ে কাজ করে যা গ্রেডলের সাথে ভাগ করে নেওয়া হয়েছে, যার কারণে এটি সক্ষম করার আগে আপনাকে অতিরিক্ত মেমরি বরাদ্দ করতে হবে - সেই স্মৃতি গ্রেডল এবং একাধিক ডেক্স প্রসেসের মধ্যে ভাগ করা হবে be

যদি আপনি 1 গিগাবাইটের ডিফল্ট অতিক্রম করে আপনার মডিউল-স্তরের বিল্ড.gradle ফাইলটিতে জাভাম্যাক্সহীপসাইজ বাড়িয়ে থাকেন তবে আপনার যথাযথভাবে গ্রেডেল ডাইমনকে অর্পিত মেমরিটি বাড়ানো দরকার।

প্রসেসে যথেষ্ট পরিমাণ মেমোরি বরাদ্দ থাকলে ডেক্সটি ডিফল্টরূপে সক্ষম হয়, সামগ্রিক বিল্ড পারফরম্যান্স উন্নত করে এবং একাধিক সমান্তরাল ভিএম উদাহরণ শুরু করার ওভারহেড সরিয়ে দেয় । তাত্ক্ষণিক রান, ইনক্রিমেন্টাল এবং সম্পূর্ণ বিল্ড সহ সকল বিল্ড টাইমের ক্ষেত্রে ফলাফলটি উল্লেখযোগ্য উন্নতি।

উত্স: https://medium.com/google-developers/faster-android-studio-builds-with-dex-in-process-5988ed8aa37e

https://rnfirebase.io/#increasing-android-build- মেমরি


4
আপনি কী ব্যাখ্যা করতে পারেন যে এটি কী করছে এবং কেন এটি সহায়তা করে?
অ্যালেক্স

4
সূত্রগুলিও রাখুন। মাঝারি.com
ষভ সাগর

4
হ্যালো @ কৈলাসউনিয়াল যদি আমার অ্যানড্রয়েড স্টুডিওর গুইতে 2048 নম্বরের আকার হয় এবং আমি এখনও 'ডিভিমন মেয়াদ শেষ হয়ে যাচ্ছি কারণ জেভিএম হিপ স্থানটি শেষ হয়ে গেছে'?
আবদী

@abdi org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8এ গ্রেড.প্রোপার্টিগুলিতে রাখার চেষ্টা করুন । যদি এখনও কাজ না করে থাকে তবে দুঃখিত যে আমি এটি ঠিক করব কীভাবে আমার কোন ধারণা নেই।
কৈলাশ ইউনিয়াল

4
আন-মন্তব্য org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8মধ্যে android/gradle.propertiesএকটি যাদুমন্ত্র Lika কাজ করেন। ধন্যবাদ !! @ কৈলাশউনিয়াল
বিকাস বানসাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.