Решено: додајте сервисне датотеке у сетуп.пи РОС2

Последњих година, област роботике је доживела пораст напретка и усвојених технологија. Један од њих је РОС2 (Робот Оператинг Систем 2), оквир отвореног кода који обезбеђује алате, библиотеке и конвенције за развој, тестирање и одржавање апликација робота. Овај чланак се бави додавањем сервисних датотека у РОС2 пакет помоћу сетуп.пи, што је суштинска вештина за програмере који раде са овом платформом. Почећемо са кратким уводом, представићемо решење проблема, провести вас кроз водич корак по корак и разговарати о сродним темама ради дубљег разумевања.

Подешавање сервисне датотеке у РОС2 пакету укључује два главна корака: креирање датотеке дефиниције сервисне поруке (.срв) и додавање неопходних конфигурација у датотеке пацкаге.кмл и сетуп.пи. У овом водичу ћемо креирати једноставну услугу која узима улазни низ и враћа дужину датог уноса.

Прво, припремимо наш радни простор. Направите РОС2 пакет под називом „стринг_ленгтх_сервице“ са следећом командом:

„`
рос2 пкг цреате –буилд-типе амент_питхон стринг_ленгтх_сервице
„`

Сада креирајте директоријум под називом „срв“ унутар пакета „стринг_ленгтх_сервице“ да бисте сачували нашу датотеку дефиниције сервисне поруке:

„`
мкдир срв
„`

Унутар директоријума „срв“ креирајте датотеку под називом „СтрингЛенгтх.срв“ са следећим садржајем:

„`
стринг инпут_стринг
-
дужина инт64
„`

У датотеци пацкаге.кмл, обавезно додајте неопходне зависности:

“`кмл
стд_мсгс
сервице_интерфаце_пацкагес
амент_цмаке
амент_цмаке_ауто
матплотлиб
„`

Сада, пређимо на основни део овог чланка – додавање сервисних датотека у сетуп.пи. Отворите датотеку „сетуп.пи“ и укључите следећи код:

„`питхон
из сетупптоолс импорт сетуп
од глоб импорт глоб

пацкаге_наме = 'стринг_ленгтх_сервице'

подесити(
име=име_пакета,
верзија='0.0.0′,
пакети=[име_пакета],
дата_филес=[
('схаре/амент_индек/ресоурце_индек/пацкагес',
['ресоурце/' + пацкаге_наме]),
('схаре/' + пацкаге_наме, ['пацкаге.кмл']),
('схаре/' + пацкаге_наме, глоб('срв/*'))
],
инсталл_рекуирес=['сетуптоолс'],
зип_сафе=Тачно,
кеепер='девелопер_наме_хере',
суппортер_емаил='девелопер_емаил_хере',
десцриптион='Услуга за израчунавање дужине стринга',
лиценце='МИТ',
тестс_рекуире=['питест'],
ентри_поинтс={
'цонсоле_сцриптс': [
'стринг_ленгтх_сервер = ' + име_пакета + '.стринг_ленгтх_сервер:маин',
'стринг_ленгтх_цлиент = ' + име_пакета + '.стринг_ленгтх_цлиент:маин',
],
},
)
„`

Хајде сада да разговарамо о томе шта овај код ради: Датотека сетуп.пи користи сетуптоолс за дистрибуцију и управљање нашим пакетом. Променљива пацкаге_наме садржи име нашег пакета. Листа дата_филес наводи неопходне ресурсе, пацкаге.кмл и сервисне датотеке које ће се дистрибуирати заједно са пакетом. инсталл_рекуирес наводи потребне пакете, а ентри_поинтс дефинишу извршне датотеке наше услуге. Обавезно замените „девелопер_наме_хере“ и „девелопер_емаил_хере“ одговарајућим вредностима.

Коришћење рцлпи и стд_срвс

Након подешавања сервисних датотека у сетуп.пи, неопходно је имплементирати серверски и клијентски код користећи РОС2 Питхон Цлиент Либрари, рцлпи и стд_срвс за стандардне типове услуга.

Креирајте датотеке „стринг_ленгтх_сервер.пи“ и „стринг_ленгтх_цлиент.пи“ унутар директоријума пакета и примените серверски и клијентски код. Детаље о томе како написати серверски и клијентски код можете пронаћи у РОС2 документацији.

Изградња и тестирање услуге

На крају, направите и тестирајте свој пакет користећи следеће команде:

„`
извор /опт/рос/фоки/сетуп.басх
цолцон буилд –пацкагес-селецт стринг_ленгтх_сервице
извор инсталл/сетуп.басх
„`

Након успешне градње, покрените сервер и клијент користећи два одвојена терминала:

„`
рос2 покрените стринг_ленгтх_сервице стринг_ленгтх_сервер
„`

„`
рос2 покрените стринг_ленгтх_сервице стринг_ленгтх_цлиент
„`

Овај водич је представио детаљно објашњење додавања сервисних датотека у сетуп.пи за РОС2 пакете док се дотиче сродних тема као што су рцлпи и стд_срвс. Пратећи ове кораке, можете креирати и дистрибуирати своје РОС2 услуге на ефикасан и организован начин, олакшавајући интеракције унутар ваших роботских апликација. Срећно и срећно кодирање!

Релатед постс:

Оставите коментар