设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6765|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) J# k, X0 y7 e$ }' l; i, \6 L% g/ W, P8 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- v9 s2 ?) u0 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 p$ A' q+ T( [, X8 z& m
swarm.SignatureNotFoundException, h' S; k" ]+ |# z. S. s8 s7 A2 i
        at swarm.Selector.<init>(Selector.java:76)5 Y1 @, ^0 k8 C7 w6 F6 Z; ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 A4 Y0 m7 X# h7 v( v& O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. [& t  ?! y% i, v  u' @7 M/ W1 p. H: m  u4 g
% E" j  }$ Q/ p0 a3 B% L- S; z
import swarm.objectbase.SwarmImpl;
2 Y- b+ Q8 v; p6 pimport swarm.objectbase.Swarm;
' a  F- t, z  Q& O7 qimport swarm.activity.ScheduleImpl;2 l4 X( ?8 k) x+ Z/ p2 m% ], y
import swarm.activity.Activity;+ Y. z0 X2 s7 F+ w1 g$ C. e* b
import swarm.activity.ActionGroupImpl;/ w  u* r9 T4 t4 {" e, c/ T
import swarm.collections.ListImpl;
4 @6 J' ~0 _8 A# [' X" mimport swarm.defobj.Zone; 5 Z( |9 l& \9 h
import swarm.Globals;
! P! s/ w: l/ r7 P1 [* b% cimport swarm.Selector;' B0 X8 [( |; k) N' R
import swarm.activity.ActionGroup;
2 M6 X9 A) z8 zclass Agent {9 |1 Q& m& T( ?7 I! r
        char id;* ~; z2 w* [/ H" W. }

4 B: j: V" [0 E        Agent(char id) {
0 |2 F7 v- s$ Y2 `; L                this.id = id;
% d' i: r/ i7 Q+ }' b        }
6 r' r. q3 x# m4 x; J3 t1 s& }; O! E- ~3 W% g# z( ~
        public void agentStep() {6 F: N# r: O/ e; }, M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 v& g8 s& q/ C$ ?        }/ w4 A+ E0 d. I% Z8 t+ \9 T
}" ^) q# ]7 L7 \& z4 h7 o& [2 V
$ ]; o' |/ d+ |3 K
public class ActionGroupDemo extends SwarmImpl {7 I0 s  ^# c% b4 K
        ScheduleImpl schedule;! \% o+ R  g" Y0 n; l# u
        ActionGroupImpl actionGroup;. x. L3 K. G  j  F: _
        ListImpl list;
0 V9 I/ \5 c% ~0 }        char Id = 'a';1 |$ ?8 g; F8 G
" B* Z8 |0 O  Q1 ~
        ActionGroupDemo(Zone aZone) {# [  v+ c% o9 @( h3 O
                super(aZone);
/ |! Z8 m; u8 ?" J, N$ O: s                list = new ListImpl(aZone);
6 r4 y% T- n! C/ _$ k! L3 M% X& _                swarmSetp();$ K) S% B) S* T
                actionGroup = new ActionGroupImpl(aZone);/ x& Q- I/ U( @9 h( c* N6 q2 c0 K! y
                schedule = new ScheduleImpl(aZone);& ?* [" x4 C: B; J+ F: D3 e0 H
                try {8 t  U2 n! W$ f6 e( @: h7 z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' ^8 t7 E6 [: }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% G5 ?0 }3 f6 h. S
                        & C6 P4 ~1 O7 ]& _4 T7 I/ m
                        actionGroup.createActionForEach$message(list, agentSel);: _+ v4 W% @' `  L5 X
                        actionGroup.createActionTo$message(this, swarmSel);
- T& K4 |" j& h* }3 g, M$ z                        schedule.at$createAction(0, actionGroup);5 C* K' U# i8 O* R
                        schedule.at$createAction(1, actionGroup);
+ M% N) d% ?2 _! k$ a1 Y                        schedule.at$createAction(2, actionGroup);
  A1 I: V$ Q$ R$ `; a
* B( p! [0 v2 E/ n% X9 A/ g3 ^                } catch (Exception e) {
% T7 ~% l& O8 |5 Y  ~4 G                        e.printStackTrace(System.err);
! z. s$ x/ w/ W3 A2 |6 E                        //System.out.println(e);
( H1 J" N; L9 T( @                        System.exit(1);
8 N. S: T8 z% X4 z! G                }) z9 {; a7 }0 L9 F# l5 {
: _- u* U3 K# D
% R# P" y; U: i1 ^! [& g
        }  I& t9 p2 H! b3 Z" Q4 @

' l" w5 p+ G  E        private void swarmSetp() {
& L9 n0 _2 s4 j  C9 [; b/ x                list.addLast(new Agent(Id));
: \2 v4 ?7 J2 x3 V7 N, z  s1 V                Id++;
' m; u/ Y% j! Q/ J3 g        }) H% P, }: t: W/ N

0 D" p0 m, j/ V% {. w' P        public Activity activateIn(Swarm context) {" K: j1 e+ v$ X( z) t
                super.activateIn(context);
- Y8 t# k5 Z1 y9 ]' Y7 ~2 F' k- Y                schedule.activateIn(this);: K; l+ C4 \( Z
                return getActivity();( \& U7 Z' U9 t  ^3 X# [0 H
        }! ]; l8 Z5 h7 u) T* C* \5 Y* n3 V

/ L) f* t+ b2 U1 L6 Y% U        public static void main(String[] args) {
+ n% ]* O- o, x' R" n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 {& D& v; f9 e8 t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 ^8 b( N2 t) Y  s9 R  d- ?                swarms.buildObjects();
, C6 y! j% z! N- B2 e& d; p0 ?3 a7 T                swarms.buildActions();- J! Q4 i" g) x6 ?5 ]
                swarms.activateIn(null).run();4 L6 h' P8 J! a4 A* e
        }
, y% v5 y0 n- `: X2 a% \) U; v, Y5 W. o- k3 ?) W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-8 15:47 , Processed in 0.015174 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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