设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6481|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- e2 E( A& }* Y0 r4 G. g6 k: ?* M+ O% k+ Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" L6 V; m5 b- L* l: R( i' u8 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 h% p% M% w4 h. g, H4 M9 {
swarm.SignatureNotFoundException
+ J! ~8 K( i; k. F! u5 J( D        at swarm.Selector.<init>(Selector.java:76)4 t( y7 u2 K0 `5 o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# [: @; ]0 B3 `: m9 P2 B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. L+ Q( X; n: T
/ n! F2 U6 h$ Z. ?  Q' s+ ]1 c( N3 {+ Z( L# t
import swarm.objectbase.SwarmImpl;
% z3 h1 n2 T* R/ w* Aimport swarm.objectbase.Swarm;6 Q3 d* H. Z/ @! N* ?
import swarm.activity.ScheduleImpl;
- \  m2 B0 X7 a6 B$ Eimport swarm.activity.Activity;) p) z; Q) |( ?- E0 W% X
import swarm.activity.ActionGroupImpl;4 O0 \- c" ]- N. ^5 H; n" m
import swarm.collections.ListImpl;) ^8 Q1 m' D; @
import swarm.defobj.Zone;
3 ]3 i. [  P( x# ]/ G# Kimport swarm.Globals;
% N; M+ Z1 K/ Z# P2 ^. C% x/ Yimport swarm.Selector;
; B6 R2 n( f, qimport swarm.activity.ActionGroup;
" \( r8 x, i+ g; \5 e- g3 h$ u! Iclass Agent {2 f; \7 K8 f8 K5 J4 U9 i5 Y
        char id;. O6 Y! }' r3 J5 r7 E( K
+ W0 A& T9 W, v0 |
        Agent(char id) {
# Q/ y7 z4 q, F; X$ c# C                this.id = id;8 @$ m% \. l1 Q6 c" J) l* K' s
        }7 k2 ?9 M" \4 G8 Q! n

9 n% F+ H+ E) l8 Y        public void agentStep() {
2 t6 K$ C8 Q, V1 U, B8 _0 L                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 z1 V% y1 f: G( c% S7 \        }4 A( h" L8 y7 K% R
}. A+ s, [& |) ^5 v+ K' l
  T' m0 K1 H# |; X2 f: H3 e
public class ActionGroupDemo extends SwarmImpl {& e& V0 J+ x. [% F6 @% T/ f
        ScheduleImpl schedule;# ^2 \4 B. v% Q' }; G( ]9 ^
        ActionGroupImpl actionGroup;" H7 R6 B- d) P9 }' \9 e; A& v- _
        ListImpl list;
6 g, X+ {$ T. Q/ I& u0 i        char Id = 'a';" H0 t' I$ s9 l4 |4 G+ T% |. Y8 C

$ y& R' ~1 V9 i! I        ActionGroupDemo(Zone aZone) {+ |9 K* \3 x( m4 \0 F' r( N
                super(aZone);! e8 D0 z* d+ J" Q7 _2 o
                list = new ListImpl(aZone);
! ?5 `) ]1 x9 K& w                swarmSetp();
9 T( [1 A& ]% A. a% f: q( Q                actionGroup = new ActionGroupImpl(aZone);& ]- P5 e+ x1 O
                schedule = new ScheduleImpl(aZone);
; c0 R  X8 X$ Y3 u4 k/ \/ o                try {1 Z/ ]6 h8 M% D
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( F2 D  X, f. W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  E! K! m; ^; M' z3 L; w
                        & x. ]" C0 g/ n1 ]+ o% w1 m4 L
                        actionGroup.createActionForEach$message(list, agentSel);
2 E; P7 O: c  h7 r: g$ l2 I1 T/ p                        actionGroup.createActionTo$message(this, swarmSel);5 g, B# h0 s( b/ F5 u
                        schedule.at$createAction(0, actionGroup);
: d7 a" G; R+ k& w                        schedule.at$createAction(1, actionGroup);
- L' I3 u% A  }; c                        schedule.at$createAction(2, actionGroup);
' ?$ J0 y$ Z6 d" r- s8 V; x+ {* Q* J- Y( W: p3 M1 F# z
                } catch (Exception e) {0 G7 i) Q7 M; G  I% Q
                        e.printStackTrace(System.err);
  R6 b: J9 {" R3 R' D: k" |                        //System.out.println(e);( V- ~5 X4 [! W* r
                        System.exit(1);
8 z& x# [: K2 v! G! y8 L! i$ h' w                }
7 l# i( }- X4 A. b
  n- I0 x/ K* T& I3 n9 v
3 x# G# l; ]- f; l/ M        }
; M! b2 U; l  I" {# E) a- D0 h! l8 a7 v+ H8 ]" O! p; n4 N
        private void swarmSetp() {( z! J3 s8 G& O) Q+ F, V
                list.addLast(new Agent(Id));
8 `  J9 v) \! |2 x, x: A& ?                Id++;
$ n7 K& F% |9 h- }' T        }- M1 v$ n9 y" e* b! N* _
8 l. A7 `2 o3 E  R6 _0 n& Y3 c& r
        public Activity activateIn(Swarm context) {
$ W& E, v# {9 e, P# C! c                super.activateIn(context);
5 N" Q; [; V& W- ]/ w7 V                schedule.activateIn(this);
0 x% M  R5 M- U+ B2 W9 G0 p                return getActivity();
* J; E2 T: y1 A8 s        }/ i. |- J; }- ]# V# o1 a

& t7 o8 m/ A8 d        public static void main(String[] args) {
; x' h/ [* P4 v8 X/ C, S$ g/ c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 u* l  m, R) l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( R4 d! C+ C# v1 r                swarms.buildObjects();
8 ~& x9 K" t* V                swarms.buildActions();/ b/ g% ^+ U0 e! x$ `7 Y
                swarms.activateIn(null).run();
8 L' R7 L: P* E! I0 M( i8 n/ U% `9 h        }
: F. B1 j" b: H- s4 m
$ A7 i8 i- U; O. w6 W7 G% {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-29 20:38 , Processed in 0.017392 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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