সম্পাদক একটি প্রধান টাইপ থাকে না


92

কেবলমাত্র স্কালার ওয়েবসাইটে নমুনা স্কালা কোডটি দিয়ে যাচ্ছেন, তবে এটি চালানোর চেষ্টা করার সময় একটি বিরক্তিকর ত্রুটির মুখোমুখি।

এই কোডটি এখানে: http://www.scala-lang.org/node/45 । এটি Eclipse এ চালানোর সময়, আমি এই বার্তাটি পেয়েছি 'সম্পাদকটিতে মূল ধরণের থাকে না' যা এটি চালানো থেকে বাধা দেয়।

আমার কিছু করার দরকার আছে ... অর্থাত্ সেই ফাইলটিকে একাধিক ফাইলে বিভক্ত করুন, বা কী?

উত্তর:


37

গ্রহন এবং স্কালায় আমার এই সমস্যাটি অনেক বেশি। আপনি যদি আপনার কর্মক্ষেত্র পরিষ্কার করেন এবং আপনার প্রকল্পটি পুনর্নির্মাণ করেন তবে এটি সহায়তা করে।

কখনও কখনও গ্রহণটি কোন ফাইলগুলিকে পুনরায় সংকলন করতে হয় তা সঠিকভাবে সনাক্ত করতে পারে না :(

সম্পাদনা করুন: কোডটি Eclipse এ সূক্ষ্মভাবে চলে


4
একই অভিজ্ঞতা তৈরি। প্লাস ক্লোজিং এবং প্রকল্পটি খোলার জন্য আমার মাঝে মাঝে প্রয়োজন হবে বলে মনে হয়েছিল।
ফ্যাবিয়ান স্টেগ

ধন্যবাদ @ নুরিয়াওন এবং @ ফ্যাবিয়ান, হ্যাঁ, প্রকল্পটি পুনরায় চালু করে এটি কার্যকর হয়েছে। আপনার টিপসের জন্য আবার ধন্যবাদ।
হেলেন নীলি

4
@ হেলেন ইক্লিপস => প্রজেক্ট => পরিষ্কার আপনি প্রকল্পগুলি পরিষ্কার করতে পারবেন, পুনর্নির্মাণটি স্বয়ংক্রিয়ভাবে চালিত হবে ... সুতরাং আপনাকে প্রকল্পটি বন্ধ এবং পুনরায় খুলতে হবে না।
নুরিয়ায়ন

স্কেলা প্রকল্পটি খোলার এবং বন্ধ করার বিষয়টি আমাকে দিয়েছে: বিল্ড করার সময় ত্রুটিগুলি ঘটেছে। বিল্ডার 'ch.epfl.lamp.sdt.core.scalabuilder' ইনস্ট্যান্ট করতে ত্রুটি। প্লাগ-ইন "ch.epfl.lamp.sdt.core" ক্লাস "scala.tools.eclipse.Builder" ইনস্ট্যান্ট করতে অক্ষম। ক্লাস শুরু করতে পারেনি scala.tools.eclipse.contrib.weaving.jdt.builderoptions.ScalaJavaBuilder প্লাগ-ইন "ch.epfl.lamp.sdt.core" ক্লাস "scala.tools.eclipse.Builder" ইনস্ট্যান্ট করতে অক্ষম। ক্লাস scala.tools.eclipse.cont
تقسیم.

87

ইক্লিপসে, নিশ্চিত হয়ে নিন যে আপনি প্রকল্পের বৈশিষ্ট্যগুলিতে -> জাভা বিল্ড পাথ -> উত্সে আপনার উত্স ফোল্ডারটি যুক্ত করেছেন। অন্যথায়, প্রধান () ফাংশনটি আপনার প্রকল্পের অন্তর্ভুক্ত নাও হতে পারে।


নোট করুন যে ফোল্ডার এক্সপ্লোরার ভিউতে ফাইলগুলি "src" এ টেনে এনে ফেলেও এটি সম্পাদন করা যায়।
ম্যাক্স ভন হিপ্পেল

এটি আমার সমস্যার সমাধান করেছে তবে প্রকল্পটি বন্ধ করে এবং খোলার পরে।
সৈয়দ

26

আপনাকে নিশ্চিত করতে হবে যে আপনার Java ফাইলগুলি গ্রহপদে .src ফোল্ডারে রয়েছে। আমি এটি ঠিক না হওয়া পর্যন্ত আমার একই সমস্যা ছিল।


26

একটি সহজ উপায় হল প্রকল্পটি বন্ধ করা এবং এটি আবার খুলুন।


21

কেবলমাত্র নিশ্চিত হয়ে নিন যে আপনি যে ফোল্ডারে কাজ করছেন সেটি অন্তর্গঠিত পথে যুক্ত হয়েছে:

right-clickআপনার ফোল্ডার -> build Path->Use as source Folder

এবং এটি এখন এটি খুঁজে পাওয়া উচিত main


6

আমারও একই সমস্যা ছিল। আমি সব ধরণের জিনিস চেষ্টা করেছিলাম। এবং আমি এটি জানতে পেরেছি

  1. আমার। জাভা ফাইলগুলি লিঙ্কযুক্ত ছিল না এবং
  2. এগুলি 'src' ফোল্ডারে রাখা হয়নি।

আমি যে কাজগুলি করেছি:

প্রকল্পের বৈশিষ্ট্য >> জাভা বিল্ড পাথ >> উত্স

  • মূল 'src' ফোল্ডারটি মুছে ফেলা হয়েছে যা 'সরান' বিকল্পটি ব্যবহার করে খালি ছিল
  • 'উত্স ফোল্ডার যুক্ত করুন' বিকল্পটি ব্যবহার করে আমার উত্স। জাভা ফাইলগুলি ধারণ করে এমন উত্স যুক্ত করা হয়েছে

এটি ত্রুটির সমাধান করেছে।


5

আপনি গ্রহনের বাহ্যরেখা বার থেকে মূল ফাংশনটি চালনার চেষ্টা করতে পারেন।

সমাধান


যখন আমি এই কাজ, আমি একটি ত্রুটির বার্তা করেছেন: <project root> [in Tut_RMI] does not exit। (প্রকল্পের নাম Tut_RMI) এই প্রকল্পের নামটি কী অবৈধ?
ক্যাস্পার

5
***

শুধু কাছাকাছি এবং আবার খুলুন

*** গ্রহনে আপনার প্রকল্প। কিছু সময় লিঙ্কেজ সমস্যা আছে। এটি আমার সমস্যার সমাধান করেছে


3

একটি দ্রুত সমাধান:

প্রথমে প্যাকেজটি বাদ দিন: উত্স প্যাকেজটিতে ডান ক্লিক করুন >> পথ তৈরি করুন >> বাদ দিন

তারপরে এটি আবার অন্তর্ভুক্ত করুন: উত্স প্যাকেজটিতে ডান ক্লিক করুন >> পথ তৈরি করুন >> অন্তর্ভুক্ত করুন


3

আপনার যা করা উচিত তা হ'ল একটি জাভা প্রকল্প তৈরি করুন তবে নিশ্চিত করুন যে আপনি এই ফাইলটিকে সেই প্রকল্পের প্যাকেজ ফাইলে রেখেছেন, অন্যথায় আপনি একই ত্রুটির মুখোমুখি হবেন।

এখানে চিত্র বর্ণনা লিখুন


2

সেই কোডটি বৈধ। আপনি কি স্ক্যাল্যাক ব্যবহার করে এটি সঙ্কলনের চেষ্টা করেছেন? এছাড়াও, আপনি কি আপনার ফাইলটিকে "অ্যাড্রেসবুক" বলেছিলেন, সমস্ত ছোট হাতের অক্ষরের মতো?

এছাড়াও, আমি দেখতে পেলাম যে কোনও কারণে অ্যালিপস মূল শ্রেণিকে "অ্যাড্রেসবুক" এর পরিবর্তে ".এড্রেসবুক" হিসাবে সেট করেছে।


ধন্যবাদ ড্যানিয়েল, হ্যাঁ ফাইলটির নাম দেওয়া হয়েছে 'অ্যাড্রেসবুক' সমস্ত ছোট হাতের অক্ষর। এটি সাহায্য করে কিনা তা দেখার জন্য প্রকল্পটি পুনরায় খোলার চেষ্টা করবেন।
হেলেন নীলি

2

আপনার ফাইলটি তৈরি করা উচিত

ডানদিকে নির্বাচন করে আপনি আপনার ফাইলের নাম খুঁজে পাবেন,

এর অধীনে এসআরসি ফোল্ডারটি পাবেন তাদের ডান ক্লিক করুন -> শ্রেণি বিকল্পটি

তাদের আপনার ফাইল তৈরি করা উচিত


2

আপনার জাজা ফাইলটি আরআরএল প্যাকেজে বা অন্য কোনও প্যাকেজে উপস্থিত রয়েছে তা নিশ্চিত করুন। যদি মূল ফাংশন সহ জাভা ফাইলটি সমস্ত প্যাকেজের বাইরে থাকে তবে এই ত্রুটি নিক্ষেপ করা হবে।


2

অনুরূপ সমস্যার মুখোমুখি হয়েছি, রূপরেখা ভিউতে মূল পদ্ধতিতে ডান ক্লিক করে এটি সমাধান করে জাভা অ্যাপ্লিকেশন হিসাবে চালানো।


1

আমার শুধু এই সমস্যা ছিল। সমাধানটি গ্রহনটি প্রকল্পটিকে জাভা প্রকল্প হিসাবে তৈরি করেছে তা নিশ্চিত করা। কেবলমাত্র একটি নতুন জাভা প্রকল্প তৈরি করুন এবং আপনার শ্রেণিকে এসআরসি ফোল্ডারে অনুলিপি করুন (এবং চূড়ান্ত নির্ভরতা আমদানি করুন)। এই সমস্যা ঠিক করা উচিত।


কুলডক্স ধন্যবাদ, আপনার মন্তব্যের জন্য। আমি দীর্ঘদিন ধরে সমস্যার সমাধান করেছি তবে আশা করি অন্য কেউ এখানে সমাধানগুলি সহায়ক খুঁজে পেয়েছেন।
হেলেন নীলি

1

সঠিক উত্তরটি হ'ল: বিল্ডপথের জেআরআি লাইব্রেরির আগে স্কালার লাইব্রেরির প্রয়োজন।

জাভা বিল্ডপথ> অর্ডার এবং রফতানিতে যান এবং স্কালা লাইব্রেরিটিকে শীর্ষে সরিয়ে দিন


1

আমি জাভা প্রকল্পের সাথে এই সমস্যাটি পেয়েছিলাম যা আমি ফাইল সিস্টেম থেকে (এক্সপিপস হেলিওসের অধীনে) আমদানি করি। এখানে একটি ইঙ্গিত দেওয়া হয়েছে: কোনও "বিন" ডিরেক্টরি প্রদর্শিত না হওয়ায় src কোডটি মোটেও সংকলিত বলে মনে হচ্ছে না।

আমাকে স্ক্র্যাচ (উইজার্ড ব্যবহার করে) থেকে একটি জাভা প্রকল্প তৈরি করতে হয়েছিল, তারপরে .projectঅ-কর্মক্ষম এবং কার্যক্ষম প্রকল্পগুলির ফাইলগুলির তুলনা করতে হবে ।

প্রজেক্ট ফাইলটিতে "সম্পাদক একটি প্রধান ধরণের ধারণ করে না" এমন প্রকল্পটি "বিল্ডস্পেক" হিসাবে রয়েছে:

<buildSpec>
</buildSpec>

তবে কার্যনির্বাহী প্রকল্পটির এটি "বিল্ডস্পেক" হিসাবে ছিল:

<buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

আমি এটি অনুলিপি করেছি এবং আমদানি করা প্রকল্পটি কাজ করেছে।

আমি জানি আমার উত্তর জাভা এর জন্য, তবে আপনার স্কালাল প্রকল্পের জন্য এটি একই সমস্যা হতে পারে।


1

আপনার তৈরি করা ফাইলটি এসসিআর (উত্স) ফোল্ডারের বাইরে থাকতে পারে। উত্স ফোল্ডারের বাইরে জাভা ফাইল থেকে শ্রেণি অবজেক্টকে (এসআরসি ফোল্ডারে অবস্থিত ফাইল থেকে) কল করার চেষ্টা করা একই ত্রুটির ফলস্বরূপ। উত্স ফোল্ডারে জাজা ফাইলটি অনুলিপি করুন, তারপরে এটি তৈরি করুন। ত্রুটি চলে যাবে।


1

আমারও একই সমস্যা ছিল। অন্য ফোল্ডারে আমার এসআরসি প্যাকেজটি ছিল না। আমি এটিকে সরান এবং ফোল্ডারটি সংশোধন করে সমাধান করেছি


1

কমান্ড লাইন থেকে "ইক্লিপস -ক্লেয়ান-রিফ্রেশ" চালান। অন্যান্য সমস্ত সমাধান ব্যর্থ হলে এটি আমার জন্য সমস্যাটি স্থির করে।


1

এটি জাভা বিল্ড পাথ নিয়ে সমস্যা হতে পারে। নীচে পদক্ষেপ চেষ্টা করুন:

  1. প্রকল্পের বৈশিষ্ট্যে যান
  2. জাভা বিল্ড পাথে যান
  3. উত্স ট্যাবে যান এবং প্রকল্পের এসআরসি ফোল্ডার যুক্ত করুন

এটি সমস্যার সমাধান করা উচিত।


1

এটি যদি মাভেন প্রকল্প হয় তবে দয়া করে পরীক্ষা করুন জাভা ফাইলটি এসআরসি / মেইন / জাভা এর অধীনে তৈরি হয়েছে

আপনি যদি না পেয়ে থাকেন তবে দয়া করে জেআরই পথ পরিবর্তন করুন এবং উপরের ফোল্ডার কাঠামোয় জাভা ফাইলগুলি তৈরি করুন


0

আমার জন্য, Eclipse 3.6 এ, যখন আমার মূল পদ্ধতিটি সর্বজনীন না হয় তখন এই সমস্যা দেখা দেয়। এই জাতীয় একটি প্রধান পদ্ধতি রেখে আমি সমস্যাটি তৈরি করেছি:

static void main(String[] args) 

ডাবিগার নিজে থেকে এটি সনাক্ত করতে অক্ষম ছিল। আমি বেশ অবাক হয়েছি এক্লিপস এটিকে উপেক্ষা করে।


0

সবচেয়ে খারাপ ক্ষেত্রে - শুরু থেকে সমস্ত আমদানি করে আবার প্রকল্প তৈরি করুন। আমার ক্ষেত্রে অন্য কোনও বিকল্প কাজ করেনি। এই ধরণের ত্রুটিটি ইঙ্গিত দেয় যে প্রকল্প সেটিংসে একটি ত্রুটি রয়েছে। আমি একবার এটি সমাধান করতে সক্ষম হয়েছি, তবে আরও একবার উন্নয়ন হয়েছে, ত্রুটি ফিরে এসেছিল। প্রথম থেকেই সবকিছু পুনরুদ্ধার করা আমাকে কিছু লিঙ্কগুলি বুঝতে এবং অনুকূলিত করতে সহায়তা করেছে এবং এখন আমি নিশ্চিত যে এটি সঠিকভাবে কাজ করে।


0

নীচের পদক্ষেপগুলি অনুসরণ করুন:

  1. আপনার সমস্ত জাভা ফাইলগুলি অন্য কোনও স্থানে ব্যাকআপ করুন
  2. পুরো জাভা প্রকল্পটি মুছুন
  3. রুট এ ডান ক্লিক করে নতুন জাভা প্রকল্প তৈরি করুন এবং নতুন ক্লিক করুন
  4. সমস্ত ফাইল নতুন জায়গায় পুনরুদ্ধার করুন !!

0

ফাইল >> আমদানি >> ওয়ার্কস্পেসে বিদ্যমান প্রকল্পসমূহ >> সংরক্ষণাগার ফাইল করা নির্বাচন করুন >> ব্রাউজ করুন এবং ফাইলটি সনাক্ত করুন >> সমাপ্তি। যদি এটি ইতিমধ্যে অন্য কোনওভাবে আমদানি করে থাকে তবে এটি মুছুন এবং সেভাবে চেষ্টা করুন। আমি চেষ্টা না করা পর্যন্ত আমার একই সমস্যা ছিল।


0

আরও একটি বিষয় যাচাই করে দেখুন: নিশ্চিত করুন যে আপনার উত্স ফাইলটিতে এটির উপ-ডিরেক্টরিটির সাথে সামঞ্জস্যপূর্ণ সঠিক প্যাকেজ ঘোষণা রয়েছে the প্যাকেজ বিবৃতি অনুপস্থিত।


0

উত্স ফোল্ডারটি পরিবর্তন করার পরেও আমার এই সমস্যাটি রয়েছে। যে সমাধানটির জন্য কাজ করেছে তা হ'ল কেবল ফাইল সম্পাদনা এবং এটি সংরক্ষণ করুন।


0

'আপডেট প্রকল্প' চেষ্টা করুন। একবার এটি করার পরে, জাভা অ্যাপ্লিকেশন হিসাবে চালানো বিকল্পটি উপস্থিত হয়েছিল।


0

আমার বিশেষ 'হ্যালো ওয়ার্ল্ড' ক্ষেত্রে এই সমস্যার কারণটি ছিল, আমার main()পদ্ধতিটি স্কালার অভ্যন্তরে ছিল class

আমি main()পদ্ধতিটি স্কালের নীচে রেখেছি objectএবং ত্রুটিটি অদৃশ্য হয়ে গেছে।

এর কারণ objectজাভা পদগুলিতে স্কালা হ'ল একমাত্র স্থির সদস্য এবং অভ্যন্তরীণ পদ্ধতিগুলি entity

এটা কেন জাভার হয় public static void main()Scala অধীনে স্থাপন করা আবশ্যক object

(স্কালায় classস্ট্যাটিকের অভ্যন্তর থাকতে পারে না)

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