设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9288|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! V2 i8 Z3 B" Y# I# T; L! |6 E
1 @4 \9 V/ \) R7 N. E# U6 B4 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 k% B" ]8 N' l% b/ N7 H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 c& I8 }# X$ J5 Q
swarm.SignatureNotFoundException8 {6 S: i. p* Y
        at swarm.Selector.<init>(Selector.java:76)
- w- ^$ f4 k6 I! Q% ~( \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 q! c$ g+ M# N: E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 x, Z: v2 t4 r5 V

; o. E0 |& A( A- C, K) G0 v- I, P  p  r6 u1 D
import swarm.objectbase.SwarmImpl;
' F6 M/ \' F* L% T0 s  Iimport swarm.objectbase.Swarm;- z4 C; F  u: S0 \& P( Z  a
import swarm.activity.ScheduleImpl;
: ]$ y# ~& |1 z7 Z4 }4 A0 @& k6 y3 ^& Eimport swarm.activity.Activity;
; Y) h% m5 O" E. _. Eimport swarm.activity.ActionGroupImpl;
' r; s# I9 V9 y( p' a2 rimport swarm.collections.ListImpl;
* ~3 r% J" K: v9 ?import swarm.defobj.Zone; 4 g# F: g: Q! i: A2 V) }+ [( e9 w
import swarm.Globals;
/ M5 e# j; C0 b" rimport swarm.Selector;9 V7 r. y' x" V& b! e5 o# b( U
import swarm.activity.ActionGroup;
4 i* p$ \2 j" I( p+ `9 r1 lclass Agent {" b6 K  A* }( X
        char id;: I( A/ D* w" l5 J: T
% O1 T6 ^- }9 t  @, y+ y
        Agent(char id) {
1 O/ D% y0 y9 p8 n                this.id = id;
7 i3 Y  V+ U  o9 {& ~        }' e& E8 r4 N  M# g' y! O
+ Y0 B/ ?6 W; d" z1 ~9 g7 Y: W0 O
        public void agentStep() {
% S+ y- l' j& o                System.out.println(id + ":" + Globals.env.getCurrentTime());: X8 K6 U5 q, \9 T
        }4 N: w. U  @0 n) ]& ~5 f& [
}
2 @/ W8 q2 c# m) ~0 J* G* W! a( \
! R, n; ~8 f. n0 w& Z3 u, D- |4 p$ Epublic class ActionGroupDemo extends SwarmImpl {
& O; g! V! V' H& a  i        ScheduleImpl schedule;
1 a# l  R, z+ P& k; K        ActionGroupImpl actionGroup;2 B% F! e5 o) U$ p, v5 {
        ListImpl list;
& f1 h; x3 n& ?; S        char Id = 'a';0 ]3 c" B! e' e7 `- I# z* b2 l4 T
" A  K/ O- S# h/ i
        ActionGroupDemo(Zone aZone) {5 j/ @! L7 c4 S
                super(aZone);7 z3 @! {' q+ s0 O# |
                list = new ListImpl(aZone);
2 q5 f1 G: l) z- _7 ~                swarmSetp();
( k0 J( I' I+ }' p5 J3 D( S4 V                actionGroup = new ActionGroupImpl(aZone);
5 X: k+ L2 a9 I. w4 O                schedule = new ScheduleImpl(aZone);
/ q2 L% [0 J  k) `) g- T                try {
5 c, H5 _8 @& ~* N! k: d( j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  W/ n: @$ @, x5 c, [, z( c; k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 j& D1 _9 b5 Q3 Q  j* N+ w                        & d  [, L( U( M
                        actionGroup.createActionForEach$message(list, agentSel);
, k9 ?; Z: W# a$ X8 n                        actionGroup.createActionTo$message(this, swarmSel);$ s- y- R6 v9 V+ \- k
                        schedule.at$createAction(0, actionGroup);* T, z; K- m. V. P* }3 g9 g# g/ Q
                        schedule.at$createAction(1, actionGroup);$ t. T! E7 N8 F' O
                        schedule.at$createAction(2, actionGroup);
" V! P3 W) D( j6 ]5 `& G! c9 S5 }" w9 X/ H" W, y  g. \
                } catch (Exception e) {' [2 m5 p. D: b* U4 [
                        e.printStackTrace(System.err);
0 n, u# F5 m6 m& z  W& z! p                        //System.out.println(e);' k! f" I$ r( q3 e2 o: z
                        System.exit(1);
; r; d4 y6 Y. S% k% o- {- Y3 Y                }8 f' i: q8 t( j, O3 A' x
- I  P$ P1 D% s; W+ O

7 d2 m# S1 M) ~- d$ o3 s) v, a: m1 Z        }6 k2 ]" F. W* u( J. T& \

9 w5 M+ I5 J+ W) w$ D+ Y3 `        private void swarmSetp() {0 x- ~5 |! A5 E+ A% r9 y  _0 Z* E
                list.addLast(new Agent(Id));
5 j5 }# Y' q2 I                Id++;. U( x8 I" z! {4 a3 q
        }! G& E* [" c* K  J, k8 `

# z6 o  q7 P2 h( p/ {        public Activity activateIn(Swarm context) {
& B( f* G3 J5 W5 ^' e                super.activateIn(context);
) p, E( F. S; |                schedule.activateIn(this);
- j3 B% q/ M; m3 P                return getActivity();5 f( T3 `  W7 y$ W! t( ~
        }
% d) z+ g0 h: w, b# h
3 @+ e! M, i, T7 C        public static void main(String[] args) {% s2 {% u- a* ~, P) o) M
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: U; @9 K7 `# Z5 ^/ n( K) C3 ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 M7 L$ H; o# D: O1 N                swarms.buildObjects();1 a* ]4 X( v* a* d+ M& m' \  r
                swarms.buildActions();: v! h, H3 Y$ L* z. U; @; V
                swarms.activateIn(null).run();3 |+ L9 f5 T1 }+ I8 c
        }
1 S# w% ?) p* J5 ?% p) y) s2 G: V6 ]- K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-7 15:02 , Processed in 0.014584 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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