ভিএসকোড - ডিবাগের জন্য কীভাবে কার্যকরী ডিরেক্টরি সেট করবেন


99

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

আমি কীভাবে / কোথায় করব?

উত্তর:


153

@ স্পিডকোডার 5 এর মন্তব্যটি উত্তর হওয়ার যোগ্য;

বিশেষত, আপনি একটি গতিশীল ওয়ার্কিং ডিরেক্টরি নির্দিষ্ট করতে পারেন; (যেমন বর্তমানে যে কোনও ডিরেক্টরি যেখানে বর্তমানে খোলা পাইথন ফাইলটি রয়েছে) ব্যবহার করে"cwd": "${fileDirname}"

আপনি Python: Current File (Integrated Terminal)পাইথন চালানোর সময় যদি আপনি বিকল্পটি ব্যবহার করেন তবে আপনার launch.jsonফাইলটি নীচের দিকে আমার মতো দেখাবে।

{
    "version": "0.2.0",
    "configurations": [
    {
            "name": "Python: Current File (Integrated Terminal)",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${fileDirname}"
    }, 

    //... other settings, but I modified the "Current File" setting above ...
}

মনে রাখবেন launch.jsonফাইলটি আপনার ভিজ্যুয়াল স্টুডিও কোড প্রকল্পের রান / ডিবাগ সেটিংস নিয়ন্ত্রণ করে ; আমার launch.jsonফাইলটি আমার বর্তমান "ওপেন প্রকল্প" ডিরেক্টরিতে ভিএস কোড দ্বারা স্বয়ংক্রিয়ভাবে উত্পাদিত হয়েছিল। আমি "cwd": "${fileDirname}"উপরের মত দেখানোর জন্য ফাইলটি ম্যানুয়ালি সম্পাদনা করেছি ।

মনে রাখবেন launch.jsonফাইলটি আপনার নির্দেশিকাতে আপনার প্রকল্পের নির্দিষ্ট, অথবা নির্দিষ্ট হতে পারে, তাই নিশ্চিত আপনি সম্পাদনা করছেন সঠিক launch.json (মন্তব্য দেখুন)

আপনার যদি launch.jsonফাইল না থাকে তবে এটি ব্যবহার করে দেখুন :

একটি লঞ্চ.জেসন ফাইল তৈরি করতে, ভিএস কোডে (ফাইল> ওপেন ফোল্ডার) আপনার প্রজেক্ট ফোল্ডারটি খুলুন এবং তারপরে ডিবাগ ভিউ শীর্ষ বারে গিয়ার আইকনটি কনফিগার করুন।


6
সমস্ত কনফিগারেশনের জন্য এটি ডিফল্ট সেটিংস হিসাবে সেট করার কোনও উপায়?
সেরিহি

4
আপনি সঠিক প্রবর্তন.জসন ফাইলটি সম্পাদনা করছেন তা নিশ্চিত হন! আমার অভিজ্ঞতায় ভিএস কোড আমি খোলার প্রতিটি প্রকল্প ফোল্ডারে একটি .vscode ডিরেক্টরি তৈরি করে। গতকাল যদি আপনি পিতা / মাতা ফোল্ডারটি খুলেন এবং আজ আপনি পিতামাতা / সন্তানের / খুললেন, আপনাকে যথাযথভাবে পরিবর্তন করতে হবে।
ক্রিসিনমটাউন

4
আর একটি ফাইল রয়েছে যা লঞ্চ.জসনের অনুরূপ: ওয়ার্কস্পেস [এক্স] .কোড-ওয়ার্কস্পেস। এটিতে একটি 'লঞ্চ' কী রয়েছে। এই সেটিংটি কি লঞ্চ.জসন এন্ট্রিগুলির মতো?
টিমো

4
আমি কি টার্মিনালে ফোল্ডারটি স্ক্রিপ্টটি ফোল্ডারে সেট করতে পারি? উদাহরণস্বরূপ আমার শেষ পিএস 1 স্ক্রিপ্ট লাইনটি সেট-লোকেশন ফোও, আমি টার্মিনালটি ফু-তে থাকতে চাই।
টিমো

4
এই উত্তরটি আমার পক্ষে কাজ করে নি, তবে এইটি একটি করেছে: stackoverflow.com/a/62331298/65326
Apreche

44

আপনাকে যা করতে হবে তা হ'ল লঞ্চ.জসন ফাইলে সিডব্লিউডি সেটিংসটি কনফিগার করতে হবে:

{
    "name": "Python",
    "type": "python",
    "pythonPath":"python", 
    ....
    "cwd": "<Path to the directory>"
    ....
}

এটি সম্পর্কে আরও তথ্য অফিসিয়াল ভিএস কোড ডক্স ওয়েবসাইটে পাওয়া যাবে


হ্যাঁ, এটা করে। আমি দেখতে পাচ্ছি যে এটি আসলে .vscode ডিরেক্টরি, তাই আমি মনে করি আমার শেষ পর্যন্ত ঠিক যোগ করতে হবে?
ব্যবহারকারী 1443098

হ্যাঁ, সেই অনুযায়ী উত্তরটি সংশোধন করবে
ডন

18
"cwd": "${fileDirname}"ওপেন সোর্স ফাইলের বর্তমান ডিরেক্টরিতে চালাতে
স্পিডকোডার 5

16

এই সেটিংটি আমাকে সহায়তা করে:

{
  "type": "node",
  "request": "launch",
  "name": "Launch Program",
  "cwd": "${workspaceFolder}\\app\\js", // set directory here
  "program": "${workspaceFolder}\\app\\js\\server.js", // set start js here
}

12

কিছু ক্ষেত্রে, এর PYTHONPATHসাথে বরাবর সেট করাও কার্যকর হতে পারে workspaceFolder:

{
    "name": "Python: Current File",
    "type": "python",
    "request": "launch",
    "program": "${file}",
    "console": "integratedTerminal",
    "cwd": "${workspaceFolder}",
    "env": {
        "PYTHONPATH": "${cwd}"
    }
}


3

নোড.জেএস-তে টাইপস্ক্রিপ্ট ব্যবহার করা লোকদের জন্য আমি এই নমুনা কনফিগারেশনটি পোস্ট করছি

আমার প্রকল্পে আমার নোড.জেএস সার্ভারের টাইপস্ক্রিপ্ট ফাইলগুলি অ্যাপ্লিকেশন_স ফোল্ডারে অবস্থিত এবং সংকলিত জেএস ফাইলগুলি অ্যাপ্লিকেশন নামের ফোল্ডারে তৈরি করা হয়েছে

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

{
  "version": "0.2.0",
  "configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Debug TypeScript in Node.js",
        "program": "${workspaceRoot}\\Application\\app.js",
        "cwd": "${workspaceRoot}\\Application",
        "protocol": "inspector",
        "outFiles": [],
        "sourceMaps": true
    },        
    {
        "type": "node",
        "request": "attach",
        "name": "Attach to Process",
        "port": 5858,
        "outFiles": [],
        "sourceMaps": true
    }
 ]
}

1

আপনি cwdযুক্তি ব্যবহার করে ডিবাগড প্রোগ্রামের জন্য বর্তমান ওয়ার্কিং ডিরেক্টরি সেট আপ করতে পারেনlaunch.json


সুপার! পরবর্তী পদক্ষেপে আমাকে পেয়েছেন। এখন, ডিবাগে আসলে প্রোগ্রামটি চালানোর চেষ্টা করা হচ্ছে। এখানে কোডটি রয়েছে: মুদ্রণ (os.getcwd ())
ব্যবহারকারী 1443098

সুপার! পরবর্তী পদক্ষেপে আমাকে পেয়েছেন। আমার একটি ওয়ান-লাইনার রয়েছে: মুদ্রণ (os.getcwd ()) যা আমি ডিবাগ করতে চাই। আমি ডিবাগ আইকনটিতে ক্লিক করি (বা এফ 5 টি চাপুন), পরিবেশের ডাউন ডাউনের নীচে একটি সামান্য নীল চলন্ত রেখা রয়েছে। যাইহোক, আমার কোড কখনও চালায় না। মনে করো আমি কিছু মিস করছি। সেটা কি হবে?
ব্যবহারকারী 1443098

শেষ
দুটিটি

4
পরবর্তী জিনিস। পরামর্শটি ব্যবহার করে, আমি অবাক হয়ে দেখলাম যে {{ওয়ার্কস্পেসরুট actually আসলে মূল নয়, মূলটির নীচে .vscode ডিরেক্টরি ছিল। এটি কি প্রত্যাশা মতো? যদি তা হয় তবে আমি সিডব্লিকে $ {ওয়ার্কস্পেসরুট} \ এ সেট করতে পারি .. (উইন্ডোতে এনওয়েতে)
ইউজার 1443098

0

আপনি যে সময়ে যে ফাইল চালাচ্ছেন বর্তমানের বর্তমান ডিরেক্টরিটি সেট করতে:

ফাইল> পছন্দসমূহ> সেটিংস> পাইথন> ডেটা সায়েন্স> ফাইল ডিরিতে এক্সিকিউট করুন

ধন্যবাদ ব্রাচ: ভিএসকোডে পাইথন: প্রতিটি সময় পাইথন ফাইলের পথে ওয়ার্কিং ডিরেক্টরি সেট করুন

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