设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10929|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- z3 M. v8 G* L' a2 S* A! X3 l1 O3 d& ]' }( t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ f7 _! x3 _/ i1 P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 X' P  s. v& J- O' x1 B0 ]swarm.SignatureNotFoundException
, u) x1 f8 W( Z& L& \        at swarm.Selector.<init>(Selector.java:76)
& g$ ^( Y& }  f/ {* }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* c& S5 `% c+ F# j4 |) p2 M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" T. t0 q# i: L! K& G8 N( T; Z' `( h1 o# c. A% |
- Z6 Z6 o0 R* L
import swarm.objectbase.SwarmImpl;# z' @! W: t% N
import swarm.objectbase.Swarm;
! @% y" Y2 i, Z3 {import swarm.activity.ScheduleImpl;
9 y9 ~- s8 Q5 |0 z* z2 vimport swarm.activity.Activity;
/ c$ X% p6 `8 W9 O' vimport swarm.activity.ActionGroupImpl;
7 f( x4 O5 e/ k4 A' o; h" yimport swarm.collections.ListImpl;
, F4 c$ o. v2 b: l* J3 Himport swarm.defobj.Zone;
" d' c& [8 n9 d$ cimport swarm.Globals;$ h+ M- h, u2 @
import swarm.Selector;
# I" Z6 S/ `8 x; Y! {0 A+ Jimport swarm.activity.ActionGroup; 4 {. l2 U) }- X: ~" ]; |4 a0 ^
class Agent {
5 Q7 V; V* \$ g9 m8 e( b0 U        char id;
& I6 _+ ~2 b) x2 c; g2 W7 X  L$ ?3 O$ d! o
        Agent(char id) {
7 U. ]$ i* ^1 G9 ^, t3 Z0 z                this.id = id;
9 p- a0 [5 S6 @/ z' B        }
3 D! W; m" ~9 I& P) e1 Q2 _; C1 F) C5 r) V; _
        public void agentStep() {$ f$ b0 t5 M$ i: h) o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% y$ x( G# s7 p7 @        }! Z% P/ Q# e5 i6 L
}
6 W2 G) `5 t" d2 ~. K3 u4 |) ^' S' @4 f; q
public class ActionGroupDemo extends SwarmImpl {
& s6 d! K" D9 U( _, R4 X* ], @        ScheduleImpl schedule;
0 y$ N7 N$ _) \9 K/ V/ F8 _        ActionGroupImpl actionGroup;& H3 p' g: j6 e3 G7 H
        ListImpl list;* |; b& s8 B- }, b* Y+ E; l
        char Id = 'a';
' N. ?6 Y# k% Y* C# ]  M7 \5 z/ N8 q( y8 q# E5 A, L
        ActionGroupDemo(Zone aZone) {
1 H3 O2 d( w2 Y, M; @8 t                super(aZone);
! b2 H( A8 y% s) @                list = new ListImpl(aZone);" n% \% I$ Q( ~* j& R, G
                swarmSetp();( g* |$ F  g" t6 g4 d" o3 h/ s  Y
                actionGroup = new ActionGroupImpl(aZone);
+ |3 c6 @+ v, g7 `8 R                schedule = new ScheduleImpl(aZone);
8 s$ ~. i3 ~2 ^) Q0 e, S                try {! ^' G/ w1 n0 K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 ^* T& J2 _( h* _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, |- i. g# T( S2 G/ g' p
                        
+ f$ Q- f" E4 ]9 A                        actionGroup.createActionForEach$message(list, agentSel);
) J3 j% u+ w+ D$ R8 |& y5 p                        actionGroup.createActionTo$message(this, swarmSel);0 g  q- ]4 Q2 [
                        schedule.at$createAction(0, actionGroup);
* ~2 I4 e$ J0 c/ o! w* @: k; C                        schedule.at$createAction(1, actionGroup);
+ {( n- R3 ?2 O+ |) N  a* R                        schedule.at$createAction(2, actionGroup);
2 N' y, a6 `5 ?/ W( \" p+ A1 C  i, B! R+ S  C
                } catch (Exception e) {; W0 g3 Y% v3 n9 D2 F+ `3 h
                        e.printStackTrace(System.err);
  z' a! I2 Q* Q4 u                        //System.out.println(e);
3 @$ p+ s5 _' q: n* w                        System.exit(1);8 d0 }# M, U" [4 [" \% p
                }
2 A5 r! q9 [' E  A) `5 ?6 q
! ?% j  c0 g& d9 {
2 E5 B+ {# L4 u. ^2 M1 N        }
2 n6 S$ @8 q1 `! G! R  `5 Q& t0 V, P# a# y/ i) q+ E! h! t% W) y. O
        private void swarmSetp() {% v% M; q! U1 j5 [
                list.addLast(new Agent(Id));
" D6 b3 m, P( `, H5 |/ A) h                Id++;
: s( A) G: B  H7 [        }
- z" |$ G- N+ B2 X
5 Q$ f& C' f% G& H2 a1 V9 ]# D        public Activity activateIn(Swarm context) {# w5 W) I% f+ K0 k/ c( w7 r
                super.activateIn(context);
/ h) l' W: k9 H: ~" `% e                schedule.activateIn(this);
! P8 g) q6 D$ q- y9 d; j                return getActivity();* g! j* q# \# ]# d$ S
        }/ c0 f, R- ~* k! c+ S. k
6 g2 U- @; Y! |9 P. F& F, [
        public static void main(String[] args) {* v- t( J0 @* @1 ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( E. d- k9 V" f9 W0 e% G+ X" N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( R5 U& N% P  x) c4 q- g                swarms.buildObjects();8 M9 |2 P, M/ q5 P9 c
                swarms.buildActions();
5 K/ e1 @( d6 F7 c                swarms.activateIn(null).run();
( R4 i2 [( A2 A$ L        }
, _) B' c6 j  L: {% |
0 W/ n; o& r" X/ t# a5 Z* f# a/ t  K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-27 23:47 , Processed in 0.015230 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表