设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6284|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . T& B6 Y2 p8 o% f* r

6 R9 ~6 o% }0 T" X8 b' M* Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: A' x5 X4 ?8 b* L* g! ?6 K+ |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* g3 U+ s4 j4 \; U% f9 ^; Cswarm.SignatureNotFoundException
( e5 F: T. A' D- j) p' N, t        at swarm.Selector.<init>(Selector.java:76)
' ^4 E" ?4 R& y! s$ M( z# a        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* H$ \* B) F9 D, D# P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 R. L1 b& u  ^, P* Y0 e% \' N/ o) }, ]

7 c( H+ t8 z3 A. Jimport swarm.objectbase.SwarmImpl;
  V& p3 `* P! K+ h  ]* l6 |/ t- ^4 himport swarm.objectbase.Swarm;+ J% Q9 `+ M- ?! ~  n, \
import swarm.activity.ScheduleImpl;5 ?+ O6 j* o- V  W4 T
import swarm.activity.Activity;" L" o, `/ h1 r1 a3 U, e
import swarm.activity.ActionGroupImpl;  V0 T+ A* U' l. {& H9 W3 ~& Z( p
import swarm.collections.ListImpl;. j# V. U, r1 }9 J
import swarm.defobj.Zone; - z( q% ]0 F( t% N% M* F5 Q
import swarm.Globals;+ r; W# H+ g! E$ t9 q
import swarm.Selector;( t4 \+ S8 |2 L
import swarm.activity.ActionGroup; ( s& @0 Z8 w2 S' A
class Agent {! B( i* n, J! o, Z7 u
        char id;
) K1 p& `/ G3 ~/ l: ]6 Y  e9 i% k5 ?8 K6 D$ M- l+ V  ]1 p4 V8 G& `
        Agent(char id) {
+ H% U0 }1 |! U                this.id = id;
8 u5 h" L/ r. u        }
& o5 M  E6 |3 s( s* T" l5 L$ F
6 Q' @9 ~$ c; j# P1 n0 K        public void agentStep() {
" Z; q( [4 j& w* I) G( }8 h                System.out.println(id + ":" + Globals.env.getCurrentTime());
  A1 m6 Q6 H' \  g        }
" ~* J, s" J0 u+ _; K+ ~* e}8 ~: Q1 Y2 I) |; l

' I: i* _6 M7 G9 t# e! Z- q' e. Jpublic class ActionGroupDemo extends SwarmImpl {/ s. {. k6 P3 s% s+ j
        ScheduleImpl schedule;
/ P8 C7 f. b4 u6 s9 O        ActionGroupImpl actionGroup;
# F$ m" {+ s4 @8 K: i        ListImpl list;
0 `$ ?* A" s" S0 k/ E        char Id = 'a';7 c: h$ q$ d# x# K
: a2 G& R+ m4 c( S: D/ [
        ActionGroupDemo(Zone aZone) {; H0 h( Z6 ]; j/ Q; `  F1 r3 Q
                super(aZone);
( J6 p' x2 ^7 c  j- c+ o( J                list = new ListImpl(aZone);4 K* x) V0 k* d8 K; p! _: K' \% S
                swarmSetp();$ Y0 h) A9 J: s
                actionGroup = new ActionGroupImpl(aZone);
. \, M) }$ ^* h                schedule = new ScheduleImpl(aZone);
) [" I, N" n6 V% T4 h                try {  N1 |# ^, m0 u* S- _7 Q) b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 U, r/ |& u2 G0 z1 R$ k$ D8 H+ B
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  h! Q- H# ]' m8 H
                        
0 V  @; Z; K3 n$ X1 Z9 F! A/ @                        actionGroup.createActionForEach$message(list, agentSel);
% N+ K$ Z9 I* {6 U4 x; _/ V                        actionGroup.createActionTo$message(this, swarmSel);
9 |. q1 o, y$ R1 p                        schedule.at$createAction(0, actionGroup);/ ^4 W) t! n2 h+ P7 Q0 h0 t% W: G
                        schedule.at$createAction(1, actionGroup);4 x1 b$ I. m3 V4 G/ I
                        schedule.at$createAction(2, actionGroup);
4 [( f. ?1 e, v' f) q0 |9 V
, r" W' a- R" x' n$ I: Z- w/ }                } catch (Exception e) {- A+ ]/ I2 \7 ~$ U9 v! B- [
                        e.printStackTrace(System.err);
( C1 S6 y" o6 t3 W                        //System.out.println(e);
3 c2 D5 u1 n& a, {; o5 n- l                        System.exit(1);
/ B  E0 f% M: P2 J0 E" }1 q7 e                }( @- D# j" u/ r4 @- S# b1 H% ^
" Z4 f! d' _' ^4 C7 y5 l6 x1 n( Q. Z

" _# T0 Y0 a6 u; G! ^1 g0 J! j        }# G, l* w6 H+ _0 S

) B! B; w; B6 C0 A- A        private void swarmSetp() {- i; F; U1 n9 c3 q9 `7 H) ]- ]
                list.addLast(new Agent(Id));
: K' c5 {* [. k& @0 H2 j2 f6 _( R                Id++;
  K  A% `: ]$ t  P        }
! Q) j) M4 m' o6 r2 \3 @; \
" l+ Q/ q, C4 n: L        public Activity activateIn(Swarm context) {
  g: d6 {$ d- V. u+ y& D6 P1 c* O                super.activateIn(context);5 C0 G2 n! ?# I+ ]( T
                schedule.activateIn(this);
1 ]3 v5 k; @% J                return getActivity();0 O- I. `0 ]% b7 ~$ v/ e
        }. y1 S' K  m3 l1 _! N* d4 D

* j# K7 c% s% G; R! @        public static void main(String[] args) {
! B% l/ c, A$ d4 y2 D  u                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ w( L* T! q7 n& n8 r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 d1 e1 ^7 @; A4 t. }2 l                swarms.buildObjects();
- y3 B; j/ Q7 K  |6 Q                swarms.buildActions();
# x- m/ ~+ W  C; Q                swarms.activateIn(null).run();! N- z+ l" G9 E5 _9 K7 u
        }+ e. L" C1 D+ |$ S6 Q2 p1 o/ ^

9 N. F: M4 ]: h5 ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-23 20:52 , Processed in 0.020335 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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