কীভাবে ইন্টেলিজ আইডিয়া দিয়ে এসবিটি প্রকল্প তৈরি করবেন?


146

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

1) মাভেনের সাথে। আমি একটি মাভেন প্রকল্প তৈরি করেছি এবং তার শীর্ষে আমি একটি এসবিটি প্রকল্প তৈরি করেছি, যা আমি ইন্টেলিজজে আমদানি করেছি। আমি তখন সহজেই জেটি সার্ভারটি বন্ধ করতে এবং অন্যান্য স্টাফগুলি করতে পারি। তবে তা আমি চাই না। আমি একই জিনিস কেবলমাত্র মাভেন-মুক্ত করতে চাই। এটা আমার দিকে নিয়ে যায়

2 )গ্রহণ সহ। সুতরাং, আমি একটি নতুন এসবিটি প্রকল্প তৈরি করেছি (একটি ছোট স্ক্রিপ্ট দিয়ে আমি লিখেছি, এসবিটি প্রকল্পকে ওয়েবপ্রজেক্ট হিসাবে কনফিগার করে)। তারপরে আমি এসবিটি-অ্যাক্লিপসাইফ প্লাগইনটি Eclipse এর প্রকল্পটি 'রূপান্তর' করতে ব্যবহার করি, যা আমি তখন IntelliJ (বিদ্যমান উত্স -> গ্রহণ) এ আমদানি করেছিলাম। তবে সমস্যাগুলি এখানে শুরু হয়েছিল: আমি কাজ করতে ইন্টেলিজ এসবিটি প্লাগইন পেতে পারি না।

যে কেউ এই আমাকে সাহায্য করতে পারেন?


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

উত্তর:


170

একটি প্রকল্প কীভাবে তৈরি করা যায় তার তিনটি প্রাথমিক উপায় রয়েছে - ইন্টেলিজের আধুনিক সংস্করণগুলি এসবিটি প্রকল্পটি বাক্সের বাইরে আমদানি করতে পারে, অন্যথায় আপনি হয় ইন্টেলিজ প্রকল্প তৈরি করতে এসবিটি প্লাগইন ব্যবহার করতে পারেন, বা এসবিটি প্রকল্প তৈরি করতে ইন্টেলিজ স্কেলা প্লাগইন ব্যবহার করতে পারেন। উভয় সমাধান ব্যবহার করে বেসিক বৈশিষ্ট্যগুলি বাক্সের বাইরে কাজ করে, কিছু জটিল বিল্ডে সমস্যা হতে পারে, সুতরাং এটি সেখানে কাজ করে কিনা তা দেখার জন্য অন্যান্য সরঞ্জাম ব্যবহার করে দেখুন।

IntelliJ

ইন্টেলিজ আইডিইএ এই দিনগুলিতে আরও ভাল হয়ে উঠেছে। বর্তমান সংস্করণ (14.0.2) স্কালা প্লাগইন সহ বাকী বাইরে এসবিটি প্রকল্পগুলিকে সমর্থন করে। কেবল প্লাগইনটি ইনস্টল করুন এবং আপনার কোনও সমস্যা ছাড়াই স্কালা / এসবিটি প্রকল্পগুলি খুলতে সক্ষম হওয়া উচিত।

পছন্দগুলিতে প্লাগইনগুলির আওতায় স্কেলা প্লাগইন

প্লাগইনটি সহ, একটি এসবিটি প্রকল্পের দিকে সরাসরি নির্দেশ করুন এবং আইডিইএ আপনাকে এই ধরণের প্রকল্প খোলার জন্য একটি উইজার্ড সরবরাহ করতে চলেছে।

আমদানি এসবিটি প্রকল্প

ইন্টেলিজজে স্কালা প্লাগইন

ইন্টেলিজি প্লাগইনটি এখানে পাওয়া যাবে http://confluence.jetbrains.com/display/SCA/Scala+Plugin+for+IntelliJ+IDEA বা সেটিংস -> প্লাগইনস ডায়ালগ ব্যবহার করে আইডিইর মধ্যে থেকে ডিরেক্টলি ইনস্টল করা যেতে পারে। এরপরে কেউ কেবল ফাইল -> নতুন প্রকল্প -> স্কালা -> এসবিটি ভিত্তিক করতে পারে। ইন্টেলিজজে বেসিক বিল্ড.এসবিটি তৈরি করবে, প্রয়োজনীয় নির্ভরতা ডাউনলোড করবে এবং প্রজেক্টটি খুলবে।

এসবিটি প্লাগইন

এসবিটি প্লাগইন যা এসবিটি ফাইলের উপর ভিত্তি করে একটি ধারণা প্রকল্প তৈরি করে তা এখানে পাওয়া যাবে: https://github.com/mpeltonen/sbt-idea

এসবিটি 12.0+ এবং 13.0+

কেবল addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.2")আপনার যোগ করুন build.sbt; কোনও অতিরিক্ত সমাধানের দরকার নেই।

পুরানো সংস্করণ:

এসবিটি 0.11+

~/.sbt/plugins/build.sbtOR এ নিম্নলিখিত লাইনগুলি তৈরি করুন এবং যুক্ত করুনPROJECT_DIR/project/plugins.sbt

resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"

addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.6.0")

gen-ideaআইডিইএ প্রকল্প ফাইল তৈরি করতে এসবিটি ব্যবহার করুন ।

ডিফল্টরূপে, এসডিটি এবং গ্রন্থাগার নির্ভরতাগুলির শ্রেণিবদ্ধকারী (অর্থাত্ উত্স এবং জাভাদোকস) যদি পাওয়া যায় এবং আইডিইএ প্রকল্প ফাইলগুলিতে রেফারেন্স যুক্ত হয়। আপনি সেগুলি ডাউনলোড / রেফারেন্স করতে না চাইলে কমান্ডটি ব্যবহার করুন gen-idea no-classifiers no-sbt-classifiers


এসবিটি 0.10.1 (প্লাগইন লেখকের মতে, 0.10.0 কাজ করবে না !)

নিম্নলিখিত লাইনগুলি তৈরি এবং add / .sbt / plugins / build.sbt এ যুক্ত করুন:

resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"

libraryDependencies += "com.github.mpeltonen" %% "sbt-idea" % "0.10.0"

gen-ideaআইডিইএ প্রকল্প ফাইল তৈরি করতে এসবিটি টাস্ক ব্যবহার করুন ।

ডিফল্টরূপে, এসডিটি এবং গ্রন্থাগার নির্ভরতাগুলির শ্রেণিবদ্ধকারী (অর্থাত্ উত্স এবং জাভাদোকস) যদি পাওয়া যায় এবং আইডিইএ প্রকল্প ফাইলগুলিতে রেফারেন্স যুক্ত হয়। আপনি সেগুলি ডাউনলোড / রেফারেন্স করতে না চাইলে কমান্ডটি ব্যবহার করুন gen-idea no-classifiers no-sbt-classifiers


এসবিটি 0.7

এটি ব্যবহার করতে, কেবল আপনার এসবিটি শেল থেকে এটি চালান, এটি প্লাগইনটিকে বাহ্যিক প্রোগ্রাম হিসাবে ব্যবহার করবে:

 > *sbtIdeaRepo at http://mpeltonen.github.com/maven/
 > *idea is com.github.mpeltonen sbt-idea-processor 0.4.0
 ...
 > update
 ...
 > idea
 ...

আপনি যেমন চান তেমন আপনার প্রকল্প সংজ্ঞাতেও বৈশিষ্ট্য যুক্ত করতে পারেন:

import sbt._
class MyProject(info: ProjectInfo) extends ParentProject(info) with IdeaProject {
  lazy val mySubProject = project("my-subproject", "my-subproject", new DefaultProject(_) with IdeaProject)
   // ...
}

4
আমি এই প্লাগইনে মোট রূপান্তরিত। আইডি-এসবিটি-প্লাগইন এর সাথে এটি ব্যবহার করুন, যা আপনাকে আপনার প্রকল্পটি এসবিটি-তে বিলম্ব করতে দেয় এবং আইডিইএর একটি সরঞ্জাম উইন্ডো থেকে ইন্টারেক্টিভভাবে এসবিটি ব্যবহার করতে পারে। এসবিটি-আইডি-র সংস্করণ 0.2.0-এসএনএপশটটি কিছুটা বিরক্তি স্থির করে - একটি প্যারেন্ট প্রকল্প তৈরি করা এবং ম্যানুয়াল ইন্টেলিজি কনফিগারেশন সংরক্ষণ।
retronym

এই প্লাগইনটির জন্য আপনাকে ধন্যবাদ। আসলেই হেলফুল!
ksemeks

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

1
আমি SBT 0.10.0 জন্য একটি উত্তর যোগ, যা সম্পূর্ণরূপে SBT 0.7.x + এ ভিন্ন stackoverflow.com/questions/4250318/...
opyate

ধন্যবাদ ওপায়েট, আমি আপনার মন্তব্য অনুসারে আমার পোস্ট আপডেট করেছি
স্টিভ গ্যারি

11

আপাতত আমি হাত দিয়ে এটি করি। এটা বেশ সহজ।

  1. এসবিটি দিয়ে প্রকল্পটি তৈরি করুন
  2. একই মূল পাথ সহ একটি নতুন আইডিইএ প্রকল্প তৈরি করুন
  3. একই মূল পাথ সহ একটি মডিউল তৈরি করুন
  4. মডিউলটিতে src / main / scala কে src পাথ হিসাবে সেট করুন
  5. মডিউলটিতে পরীক্ষার পথ হিসাবে src / test / scala সেট করুন
  6. গ্রন্থাগার হিসাবে scala-Library.jar যুক্ত করুন
  7. একটি মডিউল লাইব্রেরির মধ্যে জার ডিরেক্টরি হিসাবে lib (এটি উপস্থিত থাকলে) যুক্ত করুন
  8. মডিউল লাইব্রেরির মধ্যে জার ডিরেক্টরি হিসাবে lib_managed / compile (এটি উপস্থিত থাকলে) যুক্ত করুন
  9. মডিউল লাইব্রেরির মধ্যে জার ডিরেক্টরি হিসাবে lib_managed / পরীক্ষা (এটি উপস্থিত থাকলে) যুক্ত করুন

এটাই স্মৃতি থেকে। এটি যদি স্বয়ংক্রিয়ভাবে চালিত হয় তবে ভাল হত তবে এটি এখনকার মতো বড় বিষয় নয়।

সাবধানতার একটি নোট: উপরোক্ত পদ্ধতিটি নতুন-স্কুলের এসবিটি, উদাহরণস্বরূপ 0.10 এবং নতুনের সাথে ভাল কাজ করে না, কারণ এটি ডিফল্টরূপে lib_managed এ নির্ভরতা অনুলিপি করে না। আপনি যোগ করতে পারেন

retrieveManaged := true

আপনার বিল্ড.এসবিটিতে এটি নির্ভরতা অনুলিপি করে lib_managed করতে।


তবে, আপনি কি আপনার প্রকল্প (জেটি) ফর্ম ইন্টেলিজাজ শুরু করেন বা টার্মিনাল থেকে? আমি আইডিই থেকে প্রকল্প লঞ্চার / সংকলক সেট আপ করতে পারি না।
ksemeks

আরও একটি জিনিস: আপনার লেখা সমস্ত কিছুই আমি করেছি, তবে ইন্টেলিজ "আমদানি নেট.লিফটওব.লাইফট্রুলস" আমদানির জন্য "প্রতীকটি সমাধান করতে পারে না" বলছে
ksemeks

আমি আমদানি করতে পেরেছি আমাকে / lib_managed / সংকলন পরিবর্তে / lib_managed
ksemeks

6
উত্তর প্রত্যাহার! এসবিটি-আইডি প্লাগইন ব্যবহার করুন।
সেনেসো

7

টেম্পাস fugit এবং ইন্টেলিজ আইডিইএ আজকাল এত বেশি ভাল হয়ে গেছে। এটা 2015 এর পরেও তাই না?

এটি বলার পরে, ইন্টেলিজ আইডিইএ 14.0.2 এর সর্বশেষ সংস্করণটি স্কালা প্লাগইন সহ বাকী বাইরে এসবিটি প্রকল্পগুলিকে সমর্থন করে । কেবলমাত্র প্লাগইনটি ইনস্টল করুন এবং আপনার কোনও সমস্যা ছাড়াই স্কালা / এসবিটি প্রকল্পগুলি খুলতে সক্ষম হওয়া উচিত।

পছন্দগুলিতে প্লাগইনগুলির আওতায় স্কেলা প্লাগইন

আমি প্লাগইনটির আর্লি অ্যাক্সেস সংস্করণটি ব্যবহার করছি যা 1.2.67.6.EAP লেখার সময় অনুযায়ী।

প্লাগইনটির সাহায্যে একটি এসবিটি প্রকল্পের ঠিক বিন্দুতে এবং আইডিইএ আপনাকে এই ধরণের প্রকল্প খোলার জন্য একটি উইজার্ড সরবরাহ করতে চলেছে।

আমদানি এসবিটি প্রকল্প

এসবিটি 0.12.4 এ এসবিটি-ধারণা সম্পর্কে

এসবিটি 0.12.4 - জন্য সিস্টেম-প্রশস্ত প্লাগইন কনফিগারেশন ফাইল - ~/.sbt/plugins/build.sbtবা PROJECT_DIR/project/plugins.sbt- নিম্নলিখিত লাইন থাকা উচিত:

resolvers += "Sonatype snapshots" at "http://oss.sonatype.org/content/repositories/snapshots/"

addSbtPlugin(dependency="com.github.mpeltonen" % "sbt-idea" % "1.5.0-SNAPSHOT")

চালান sbt gen-ideaআইডিইএ প্রকল্প ফাইল তৈরি করতে ।

আরও আপ-টু-ডেট তথ্যের জন্য এসবিটি-ধারণা প্লাগইন ওয়েবসাইটটি পড়ুন । আপনি আমার ব্লগ এন্ট্রিটি এসটিটি ভিত্তিক প্রজেক্টটি ইন্টেলিজ আইডিইএ 13 তে এসবিটি-আইডিয়া সহ, স্কেলা 2.11 এবং এসবিটি 0.12) দরকারী দরকারীও পেতে পারেন


নতুন প্রকল্প তৈরি করার সময়। এসবিটি জেন-আইডির পরে প্রকল্পটি খালি। কোনও কাঠামো নয়, এসসিআর নয়, পরীক্ষার ফোল্ডার। এবং এটা খোঁড়া এসে গেছে ..
এসইএস

আপনি কীভাবে প্রকল্পটি তৈরি করলেন? ডিরেক্টরি কাঠামো এবং ভিতরে ফাইলগুলি কি?
জ্যাসেক লাসকোভস্কি

এটা ঠিক খালি। আমাকে এটিকে "মুখ্য / স্কালা / এসসিআর" হাতছাড়া করে নিতে হয়েছিল। তবে আমি তার সাথে বাঁচতে পারি।
ses

আপনি gthub.com/n8han/giter8 একটি এসবিটি প্রকল্পের বুটস্ট্র্যাপিংয়ের মাধ্যম হিসাবে ব্যবহার করতে চাইতে পারেন । মূল প্রকল্প হিসাবে প্রধান এসবিটি খালি ডিরেক্টরি থাকতে পারে এবং মেইন / স্কালা / এসসিআর প্রয়োজন হয় না - এসবিটি বাছাই করার জন্য কেবল আপনার স্কালা ফাইলগুলি মূল ডিরেক্টরিতে রাখুন।
জ্যাসেক লাসকোভস্কি

5

এসবিটি 0.7 এর জন্য

উত্তর এই পৃষ্ঠায় অন্য কোথাও দেখুন ।

এসবিটি 0.10 এর জন্য

ইসমাইলের এসবিটি-ধারণাটি ক্লোন এবং বিল্ড করুন:

git clone https://github.com/ijuma/sbt-idea.git
cd sbt-idea
git checkout sbt-0.10
./sbt package

আপনার যদি ইতিমধ্যে একটি না থাকে তবে একটি এসবিটি প্লাগইন lib ডিরেক্টরি তৈরি করুন

mkdir -p  ~/.sbt/plugins/lib

এক ধাপে তৈরি জারটি এখানে প্রবেশ করুন Copy

cp sbt-idea/target/scala-2.8.1.final/*.jar ~/.sbt/plugins/lib

পুনরায় আরম্ভ করুন বা এসবিটি পুনরায় লোড করুন, তারপরে আপনি চালাতে পারেন gen-idea(বা gen-idea with-classifiersআপনি যদি ইন্টেলিজজে উত্স এবং জাভাদোক চান)

উত্স: বার্তা গোষ্ঠীতে টিকারদের পরামর্শ

ইন্টেলিজ আইডিইএ নিজেই 13.x

আপনি আজকাল আইডিইএতে একটি এসবিটি-ভিত্তিক প্রকল্প খুলতে পারেন। এটি প্রয়োজনীয় প্রকল্প এবং মডিউলগুলি তৈরি করবে এবং আপনি যখনই বিল্ড স্ক্রিপ্টগুলিতে পরিবর্তন করবেন তখন আপনার নির্ভরতা আপ টু ডেট রাখবে।


2

আমি শুধু এই সমস্ত ব্যথা পেরিয়েছি। আমি একটি গ্রহণযোগ্য পরিবেশ পেতে চেষ্টা করে দিন অতিবাহিত করেছি এবং এই সিদ্ধান্তে পৌঁছেছি যে ENSIME, SBT এবং JRebel কিছু সময়ের জন্য আমার বিকাশের পরিবেশ হতে চলেছে। হ্যাঁ, এটি আবার ইমাসে ফিরে যাচ্ছে, তবে ইএনএসআইএম এটিকে কিছুটা বা রিফ্যাক্টরিং, ডিবাগিং সমর্থন, নেভিগেশন ইত্যাদির সাথে একটি ধারণায় রূপান্তরিত করে It's এটি কোনও এক্লিপস (জাভা) এর মতো ভাল কোথাও নেই, তবে স্কাল প্লাগইনগুলি যদি আরও ভালভাবে কাজ না করে তবে আমাদের সেরা।

স্কালাল ডেভলপমেন্ট এনভায়রনমেন্টগুলি স্নোফ অবধি উঠতে না পাওয়া পর্যন্ত (Eclipse or IntelliJ) আমি বিরক্ত করব না। তারা ঠিক খুব বগি।

লিফট সাইটে আলোচনাটি দেখুন।

http://groups.google.com/group/liftweb/browse_thread/thread/6e38ae7396575052#

এই থ্রেডের মধ্যেই, ইন্টেলিজের জন্য একটি হাওটোতে একটি লিঙ্ক রয়েছে, তবে যদিও এটি দুর্দান্তভাবে কাজ করে, এমন অনেকগুলি বিষয় রয়েছে যা এটিকে সামান্য কম কার্যকর করে দেয়।

http://blog.morroni.com/2010/07/14/setup-intellij-9-for-lift-framework-development/comment-page-1/


আমি ইতিমধ্যে এটি পড়েছি। এই নিবন্ধটি maven ব্যবহার করে, যা আমি কাজ করতে পরিচালিত। আমি এখন একই কাজ করার চেষ্টা করছি, শুধু এসবিটি দিয়ে, উইট মাভেন দিয়ে।
ksemeks

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

যতদূর ইএনএসআইএম সম্পর্কিত: কাজ করা কি সহজ? আমি একবার চেষ্টা করেছিলাম, তবে আমি কখনই ইম্যাক্স নিয়ে কাজ করি নি, তাই আমার পক্ষে কিছুটা কঠিন ছিল। ইম্যাক্সের সাথে কাজ করছে কোন অনুমান?
ksemeks

নিম্নলিখিত লিঙ্কটি আপনাকে একটি এসবিটি সেটআপের মাধ্যমে নিয়ে যাবে। এটি আমার পক্ষে কাজ করেছে, তবে আবার এসবিটি এবং ইন্টেলিজের সাথে একটি অ-সংহত ফ্যাশনে কাজ করা সত্যিই দুটি পৃথক সরঞ্জাম ব্যবহার করার মতো, যা এসবিটির সাথে ইএনএসআইএম অনেক প্রাকৃতিক। heikoseeberger.blogspot.com/2010/08/…
andyczerwonka

2

উত্তরগুলি 2014 এর জন্য পুরানো Inte ইনটেলিজজে 13.x এ প্লাগইন স্কালার মান 0.41.2 (এসবিটি অন্তর্ভুক্ত) is

আমার এসবিটি সংস্করণটি 0.13.5 (টার্মিনাল: sbt sbtVersion :)

প্রকল্পের মূল ফোল্ডারে যান এবং টার্মিনালে প্রবেশ করুন

sbt idea

আপনি দুটি নতুন লুকানো ফোল্ডার দেখতে পাবেন .idea এবং .idea_modules

তারপরে ইন্টেলিজে, ফাইল> ওপেন> প্রকল্পটি নির্বাচন করুন। এটি কোনও সমস্যা ছাড়াই প্রকল্পটি খোলার উচিত।


0

আপনি আপনার এসবিটি প্রকল্প তৈরি শুরু করার আগে, স্কেল প্লাগইনটি ইন্টেলিজ আইডিইএতে ডাউনলোড এবং সক্ষম হয়েছে কিনা তা নিশ্চিত করুন।

নীচের লিঙ্কটি আপনাকে যা জানা দরকার তা ব্যাখ্যা করে।

https://www.jetbrains.com/help/idea/2016.1/getting-started-with-sbt.html

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