কীভাবে আমরা জাভা টিকা ঘোষণায় কোটলিন কনস্ট্যান্টগুলিকে উল্লেখ করতে পারি?


13

কোটলিনের এই বিট দেওয়া:

object OldTownRoad {
  const val COWBOY_HATS = "from Gucci"
  const val WRANGLER = "on my booty"
}

এবং এই জাভা ক্লাস:

public class Scrap {
  @Named(OldTownRoad.COWBOY_HATS)
  public void lilNasXrefs() {
    System.out.println(OldTownRoad.COWBOY_HATS);
    System.out.println(OldTownRoad.WRANGLER);
  }
}

সংকলক println()কল দিয়ে খুশি । এটা তোলে ব্যবহার সম্পর্কে অভিযোগ COWBOY_HATSমধ্যে @Namedটীকা বললেন হিসাবে এই Android স্টুডিও 3.5.3 স্ক্রিনশট দেখা "অ্যাট্রিবিউট মান ধ্রুবক হতে হবে",:

কোটলিন ত্রুটি

আমি চেষ্টা করেছিলাম @JvmStaticএবং @JvmFieldসেই const valঘোষণাগুলিতে, কিন্তু সংকলকটি অভিযোগ করে যে দুটিও constসম্পত্তি জন্য বৈধ নয় ।

আমি একটি থেকে একই ফলাফল পেয়েছি companion object:

class OldTownRoad {
  companion object {
    const val COWBOY_HATS = "from Gucci"
    const val WRANGLER = "on my booty"
  }
}

অন্য কোনও কোটলিন ধ্রুবক বাক্য গঠন যা জাভা টিকা থেকে রেফারেন্স করা হলে কাজ করে?


চূড়ান্ত ভাল? .....
রিক সানচেজ

আপনি কোন কোটলিন সংস্করণ ব্যবহার করছেন? আমি এটি পুনরুত্পাদন করতে পারি না।
নটারিও

@ রিকসানচেজ: final const valফলাফল "ফাইনালটি একটি রিন্ডানড মডিফায়ার"। final valসমস্যা বা সমস্যার সমাধানও নয় ।
CommonsWare

@নাটারিও: কোটলিন 1.3.61
কমন্সওয়্যার

@ নত্তেরিও: আপনি এটি তিরস্কার করতে পারেন নি বলে নির্দেশ দেওয়ার জন্য ধন্যবাদ! এটি প্রদর্শিত হয় এটি একটি দুর্বৃত্ত অ্যান্ড্রয়েড স্টুডিও পরিদর্শন ত্রুটি - কোডটি জরিমানা করে।
CommonsWare

উত্তর:


10

আমি এটি কোনও অ্যান্ড্রয়েড স্টুডিও বাগ কিনা তা ভুলে গিয়েছিলাম। : Facepalm:

দেখা যাচ্ছে যে আপনি যদি কোডটি চালান তবে এটি ঠিকঠাক হয়। অ্যান্ড্রয়েড স্টুডিও ৩.৩.৩ অযথা অভিযোগ করে দেখা যাচ্ছে।

সমস্যার নিশ্চয়তা পাওয়ার চেষ্টা করার জন্য আমি একটি বাগ রিপোর্ট দায়ের করেছি ।

@ নটারিওকে অনেক ধন্যবাদ, যার মন্তব্য আমাকে বুঝতে পেরেছিল যে এটি আইডিই সমস্যা হতে পারে!


শান্ত! এটির মূল্য কীসের জন্য আমি এএস এর সামান্য পুরানো সংস্করণ ব্যবহার করছি (এখনও 3.5)।
নটারিও

আচ্ছা বুঝলাম! আমারও পুরনো সংস্করণ রয়েছে,
৩.৩.২

1
কোটলিনের ১.৩.70০ হিসাবে এই সমস্যাটি সমাধান হয়েছে (অ্যান্ড্রয়েড স্টুডিও ৩.6.১ এ)
ম্যাথু বাহর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.