আমি যখন "রান" কমান্ডটি কার্যকর করি তখন আমি কীভাবে ডিফল্ট পোর্ট (9000) প্লে ব্যবহার করতে পারি?


207

প্লে কনসোলে "রান" কমান্ড দেওয়ার সময় আমি কীভাবে বিকাশ মোডে প্লে ফ্রেমওয়ার্ক দ্বারা ব্যবহৃত ডিফল্ট পোর্টটি পরিবর্তন করতে পারি।

এটি প্লেফ্রেমওয়ার্ক 2.0 বিটার জন্য a

কমান্ড লাইনে বা অ্যাপ্লিকেশন.কোনফে http.port কনফিগারেশন প্যারামিটার ব্যবহার করার ফলে কোনও প্রভাব নেই বলে মনে হচ্ছে:

C:\dev\prototype\activiti-preso>play run --http.port=8080
[info] Loading project definition from C:\dev\prototype\activiti-preso\project
[info] Set current project to activiti-preso (in build file:/C:/dev/prototype/activiti-preso/)


Windows, really? Ok, disabling colors.

--- (Running the application from SBT, auto-reloading is enabled) ---

[error] org.jboss.netty.channel.ChannelException: Failed to bind to: 0.0.0.0/0.0.0.0:9000
[error] Use 'last' for the full log.

3
@ পেয়ারভিলেগা এটি হাসিখুশি কারণ এটি সত্য: github.com/playframework/playframework/blob/…
গ্রেগরি কালাবিন

1
আমি "উইন্ডোজ, সত্যিই দেখেছি?" আমার উইন্ডোজকে সহকর্মী ব্যবহার করে জিজ্ঞাসা করতে হয়েছিল যে এটি এখনও তা করে কিনা check আমরা ২.২.০ ব্যবহার করছি এবং এটি আর সেই বার্তাটি প্রদর্শন করে না, তবে এটি রং অক্ষম করে। আমার সন্দেহ হয় যে এটি কেবল বিটা সংস্করণে ছিল।
এরিক উইলসন

প্লেকিজ.দেবসেটেটিংগুলি: = সিক ("play.server.http.port" -> "9001") বিল্ড.এসবিটিতে রাখুন
রজত

উত্তর:


407

খেলুন 2.x

প্লে 2 এ এগুলি একটি এসবিটি প্লাগইন দিয়ে প্রয়োগ করা হয়, সুতরাং নিম্নলিখিত নির্দেশাবলী সত্যই কেবল এসবিটি কার্য। আপনি ব্যবহার করতে পারেন কোন SBT রানার (ঙ সালে খেলুন 2, এই সঙ্গে প্রয়োগ করা হয় একটি SBT প্লাগইন, তাই নিম্নলিখিত সত্যিই ঠিক SBT কর্ম আছে। আপনি যে কোনো SBT রানার (যেমন ব্যবহার করতে পারেন sbt, playঅথবা activator)। নীচে sbtরানার ব্যবহার করা হয়, কিন্তু আপনি এটি আপনার পছন্দের এসবিটি রানার জন্য বিকল্প করতে পারে।

2.x - ডেভ মোড খেলুন

ব্রাউজার-পুনরায় লোড মোডের জন্য:

sbt "run 8080"

অবিচ্ছিন্ন-পুনরায় লোড মোডের জন্য:

sbt "~run 8080"

2.x খেলুন - ডিবাগ মোড

বন্দরে http শ্রোতার সাথে ডিবাগ মোডে 8080চালাতে, চালান:

sbt -jvm-debug 9999 "run 8080"

2.x খেলুন - প্রোড মোড

প্রোড মোডে শুরু করুন:

sbt "start -Dhttp.port=8080"

2.x খেলুন - পর্যায়যুক্ত বিতরণ

একটি মঞ্চযুক্ত বিতরণ তৈরি করুন:

sbt stage

Play 2.0.x এবং 2.1.x এর জন্য target/startস্ক্রিপ্টটি ব্যবহার করুন (কেবল ইউনিক্স):

target/start -Dhttp.port=8080

2.2.x এবং 2.3.x প্লে করার জন্য target/universal/stage/binডিরেক্টরিতে উপযুক্ত প্রারম্ভিক স্ক্রিপ্টটি ব্যবহার করুন :

target/universal/stage/bin/[appname] -Dhttp.port=8080

উইন্ডোজটিতে 2.2.x এবং 2.3.x খেলুন:

target\universal\stage\bin\[appname].bat -Dhttp.port=8080

2.x খেলুন - জিপ বিতরণ

একটি জিপ বিতরণ তৈরি করতে:

sbt dist

2.0.x এবং 2.1.x প্লে করার জন্য নিষ্ক্রিয় জিপটিতে startস্ক্রিপ্টটি (কেবলমাত্র ইউনিক্স) ব্যবহার করুন :

start -Dhttp.port=8080

2.2.x প্লে করার জন্য [appname]-[version]/binডিরেক্টরিতে উপযুক্ত স্ক্রিপ্টটি ব্যবহার করুন :

[appname]-[version]/bin/[appname] -Dhttp.port=8080

উইন্ডোজে 2.2.x প্লে সহ:

[appname]-[version]\bin\[appname].bat -Dhttp.port=8080

খেলুন 1.x

ফাইলে http.portমান পরিবর্তন conf/application.confকরুন বা কমান্ড লাইনটি পাস করুন:

play run --http.port=8080

আকর্ষণীয় যথেষ্ট যে আসলে কাজ করে না। তবে সম্ভবত এটি আমার বাগানের সমস্যা বা সমস্যা an
বরিস তেরজিক

1
আমি বিশ্বাস করি এখনই এটি কেবল 1.x এর জন্য, 2.0 বিটাতে এখনও প্রয়োগ করা হয়নি
পেরে ভিলেগা

18
আমি প্লে ২.০ চালাচ্ছি। আমি যখন চেষ্টা play run 8080করি তখনও এটি 9000-এ চলে I'm আমি একটি ম্যাকে আছি। কি দেয়? সম্পাদনা: play "run 8080" কাজ!
জে Q.

6
@StefanK। আপনি পোর্টটিকে কোনও প্লে কনফিগ ফাইলে রাখতে পারবেন না কারণ পোর্টে পোর্ট শোনার পরে কনফিগারেশনটি পড়া হয় না। আপনি একটি env var ব্যবহার করতে পারেন এবং এটিতে পোর্টটি সেট করতে পারেন।
জেমস ওয়ার্ড

1
@ জেমস আমি নীচের বিষয়টিকে একটি কার্যক্ষমতার সাথে জমা দিয়েছি: github.com/sbt/sbt-native-packager/issues/155 । ধন্যবাদ!
gfournier

33

2.0-আরসি 4 খেলুন

আপনি যে প্লে কমান্ডটি চালাতে চান তার চারপাশে উদ্ধৃতিগুলি অন্তর্ভুক্ত করা গুরুত্বপূর্ণ। আমার ক্ষেত্রে কোট ব্যতীত খেলাটি এখনও 9000 বন্দরে চলবে।

play "run 8080"

বিকল্পভাবে আপনি প্লে কনসোল থেকে নিম্নলিখিতটি চালাতে পারেন (কনসোলে যাওয়ার জন্য 'প্লে' টাইপ করুন)

run 8080

4
উইন্ডোতে চলমান লোকেদের জন্য, দ্বিতীয় বিকল্পটি আমার পক্ষে কাজ করেছে (২.০.৪ ফাইন খেলুন)।
বাজতউনে

14

আশা করি এটি কাউকে সাহায্য করবে।

এসবিটি সেটিংসের মাধ্যমে:

...
.settings(PlayKeys.playDefaultPort := 8855)
...

1
এটা সঠিক উত্তর! ধন্যবাদ! (আমার মত অন্যান্য SBT এবং প্লে অনভিজ্ঞ জন্য, যোগ .settingsআপনার লাইন build.sbt, ফাইল পর lazy val root = (project in file("."))। SBT সেটিংসের উপর অধিক বিবরণের জন্য, এখানে দেখুন: scala-sbt.org/1.0/docs/Custom-Settings.html )
ক্যামেরন হাডসন

এটিই আমি খুঁজে পেয়েছি যে
সমাধানটি

7

সংস্করণ 2.0.3 :

  • প্রকল্প ডিরেক্টরিতে যান এবং কেবল খেলুন (এবং এর পরে কিছুই নয়)। এটি প্লে কনসোলটি খুলবে।

  • এরপরে, বলুন 8080 রান করুন । এটি 8080 বন্দরে প্লে শুরু হবে।

আশা করি এটা কাজে লাগবে.


5

ডিস্ট্রিবিউটেবল টার ফাইল সহ উইন্ডোজে 2.2.x খেলুন আমি বিতরণযোগ্য মূল ডিরেক্টরিতে একটি ফাইল তৈরি করেছি: {PROJECT_NAME} _config.txt এবং যুক্ত হয়েছে:

-Dhttp.port=8080

যেখানে আপনার প্রকল্পের নামের সাথে {PROJECT_NAME be প্রতিস্থাপন করা উচিত। তারপরে বিন \ ডিরেক্টরিতে যথারীতি {PROJECT_NAME}। ব্যাট স্ক্রিপ্ট শুরু করুন।


উইন্ডোতে (ডিস্ট এবং জিপ বিকল্পগুলি ব্যবহার করে), কমান্ড লাইন আর্গুমেন্টগুলি কার্যকর করে না (খেলুন 2.2.0)। তবে কনফিগারেশনে একই আর্গুমেন্ট সরবরাহ করা কবজির মতো কাজ করে।
স্কাইওয়াকার 11

5

উইন্ডোজে 2.2.0 খেলুন

একটি জিপ বিতরণ ব্যবহার করে ("ডিস্ট" কমান্ড ব্যবহার করে উত্পাদিত), আমি প্রথমে JAVA_OPTS সেট করে এবং তারপরে অ্যাপ্লিকেশন আরম্ভ করেই স্টার্টআপ পোর্টটি পরিবর্তন করতে সক্ষম হয়েছি way

উদাহরণস্বরূপ, কমান্ড লাইন থেকে

set JAVA_OPTS=-Dhttp.port=9002
bin\myapp.bat

যেখানে myapp.bat হ'ল "ডিস" কমান্ড দ্বারা নির্মিত ব্যাচ ফাইল।

নিম্নলিখিতগুলি সর্বদা আমার http.port পরামিতিটিকে অগ্রাহ্য করবে এবং 9000, ডিফল্ট পোর্টে শুরু করার চেষ্টা করবে

bin\myapp.bat -Dhttp.port=9002

তবে, আমি লক্ষ্য করেছি যে এটি অনুরোধকৃত পোর্ট থেকে শুরু করে লিনাক্স / ওএসএক্সে ঠিক কাজ করে:

./bin/myapp -Dhttp.port=9002

5

খেলুন 2.3.x

অ্যাক্টিভেটর "রান -ডিটিএইচটিপি.পোর্ট = 9001"


4

আপনি .sbtoptsপ্রকল্প ডিরেক্টরিতে এইচটিটিপি পোর্টও সেট করতে পারেন :

-Dhttp.port=9001

তারপরে আপনাকে এটিকে runপ্রতিবার টাস্কে যুক্ত করার কথা মনে রাখতে হবে না ।

প্লে 2.1.1 এর সাথে পরীক্ষিত।



2

কমিট চালু আজ (নভেম্বর 25) সঙ্গে, আপনি এখন পর পোর্ট নম্বর অধিকার নির্দিষ্ট করতে পারেন runবা startSBT কমান্ড।

এই ক্ষেত্রে

play run 8080 অথবা play start 8080

9000 পোর্টে ডিফল্ট খেলুন


মিনিট অবধি আপডেটের জন্য ধন্যবাদ! আপনার তথ্য যুক্ত করতে আমি জেমসের জবাব আপডেট করেছি, সম্ভবত আমরা এখানে একটি সাধারণ উত্তর তৈরি করতে পারি।
বোরিস টেরজিক

2

উইন্ডোজ সম্ভবত "রান 9001" নাটকটি কাজ করবে না। আপনাকে play.bat ফাইলটি পরিবর্তন করতে হবে। টিকিট দেখুন


প্লে.বাট ফাইলটি কীভাবে এখানে পরিবর্তন করতে হয় তা দ্রুত নির্দেশ করে দেওয়া লিঙ্কটি কখনও ভেঙে যাওয়ার ক্ষেত্রে (এবং আরও দ্রুত যাতে কাউকে এসও-তে সহায়তার সন্ধানকারী কাউকে সাহায্য করার জন্য) সহায়তা করতে পারে তবে এটি দ্রুত মূল্যবান হতে পারে।
টেলর আর

2

প্লে কনসোল থেকে, 888 পোর্ট থেকে চালাতে চাইলে আপনাকে কেবল রান 8888 টাইপ করতে হবে।

play> run 8888

2

2.5.x খেলার জন্য

পদক্ষেপ 1: নিয়ন্ত্রণ + ডি ব্যবহার করে নেট সার্ভারটি (এটি চলমান থাকলে) বন্ধ করুন

পদক্ষেপ 2: এসবিটি-ডিস্ট / কনফেমে যান

পদক্ষেপ 3: এটি দিয়ে এই ফাইলটি 'sbtConfig.txt' সম্পাদনা করুন

-Dhttp.port=9005

পদক্ষেপ 4: সার্ভারটি শুরু করুন

পদক্ষেপ 5: http: // হোস্ট: 9005 /



1

উইন্ডোজে 2.2.1 খেলুন একটি প্লে_অপটিএস এনভায়রনমেন্ট ভেরিয়েবল সমর্থন করে। Play এর play.bat ফাইলটিতে এই লাইনটি রয়েছে:

java -Dsbt.ivy.home="%~dp0repository" -Dplay.home="%~dp0framework" -Dsbt.boot.properties="%fp%framework/sbt/play.boot.properties" %PLAY_OPTS% -jar "%~dp0framework\sbt\sbt-launch.jar" %*

সুতরাং 9002 বন্দর চালানোর জন্য, না

set PLAY_OPTS=-Dhttp.port=9002
play run

1

2.3.7 প্লে ফ্রেমওয়ার্ক সহ পরীক্ষিত। ভাল কাজ করে.

./{application}/bin/{executable} -Dhttp.port=5000

1

আমি এটা করেছি. sudoপ্রয়োজনীয়।

$ sudo play debug -Dhttp.port=80
...
[MyPlayApp] $ run

সম্পাদনা: sudoযত্ন নেওয়ার কারণে আমার সমস্যা হয়েছিল had অবশেষে আমি প্রকল্পটি পরিষ্কার করেছি এবং আমি আর সেই কৌশলটি ব্যবহার করি না।


1
এটি আপনার বিতরণের উপর নির্ভর করে (উবুন্টু ...) এবং আপনি যদি রুট হিসাবে লগইন হন।
পিয়েরে-ইয়ভেস লে ডভাহাট

1

আমরা প্লে সংস্করণটি 2.5.6 ব্যবহার করছি।

পোর্ট পরিবর্তন করার জন্য, আপনার প্রকল্পের রুট ফোল্ডারে যান এবং হিট করুন: activator "run 8008"কমান্ড প্রম্পট / টার্মিনালে।

এবং এটাই.


0

উইন্ডোজগুলিতে, আমি এই জাতীয় একটি start.bat ফাইল ব্যবহার করি:

java -Dhttp.port=9001 -DapplyEvolutions.default=true -cp "./lib/*;" play.core.server.NettyServer "."

-DapplyEvolutions.default = সত্য বিবর্তনকে নিশ্চিতকরণের জন্য জিজ্ঞাসা না করে স্বয়ংক্রিয়ভাবে বিবর্তনগুলি প্রয়োগ করতে বলে। উত্পাদন পরিবেশের বিষয়ে সতর্কতার সাথে অবশ্যই ব্যবহার করুন ...


0

আমরা অ্যাভিটিভেটর থেকে অ্যাপ্লিকেশন পোর্টটি পরিবর্তন করতে পারি না তবে কমান্ড লাইন অ্যাক্টিভেটর "80 8080 রান" থেকে পরিবর্তন করতে পারি

তবে অ্যাক্টিভেটর থেকে কবি 9000 চালানোর জন্য আমাদের এই বন্দরটি ব্যবহার করছে এমন অ্যাপ্লিকেশনটি বন্ধ করতে হবে। আমরা এটিটি খুঁজে পেতে এবং প্রক্রিয়াটি শেষ করতে এই অ্যাপ্লিকেশনটি ব্যবহার করতে পারি https://technet.microsoft.com/en-in/sysinternals/bb897437.aspx

এর পরে আমরা দৌড়াতে পারি এবং এটি সফল হবে।


0

বন্দর ইন বন্দর উল্লেখ করুন

ডিফল্টরূপে, এসবিটি 9000 পোর্টটিতে অ্যাপ্লিকেশনটি চালায়:

sbt run

একটি পোর্ট অ্যাড- ডিটিএইচটিপি.পোর্ট ফ্ল্যাগ নির্দিষ্ট করার জন্য উদাহরণস্বরূপ:

sbt run -Dhttp.port=8080

-Dhttp.port পতাকা ব্যবহার করে আপনি আপনার বিকাশ মেশিনে একাধিক অ্যাপ্লিকেশন ডিবাগ করতে পারেন। দয়া করে মনে রাখবেন, আপনি পরীক্ষা এবং উত্পাদন পরিবেশে -Dhttp.port পতাকা ব্যবহার করতে পারেন ।

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