设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7110|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' E' y# h+ N* X3 Y) N3 O! T8 C$ l0 I: V" @* R( S$ L' V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 o6 O! L7 z& K+ o7 I9 o5 M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ v" W- h8 G/ ?! W
swarm.SignatureNotFoundException
( q8 M* c+ d5 }; E: i        at swarm.Selector.<init>(Selector.java:76)- f! m' r( I6 X" e3 @$ x2 n, Z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% Q# Y$ t( n8 ^) ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& j$ ~% h- \1 _: R) {
1 q3 H& E2 n& v/ n
# o" B; @5 o9 M( |2 }
import swarm.objectbase.SwarmImpl;) h% E8 D( ~- y/ S  n9 a
import swarm.objectbase.Swarm;4 r- o, q% k9 S& M* ?5 v- o8 D* [- L! C
import swarm.activity.ScheduleImpl;& v0 v+ I3 M4 B+ ^& @  C$ C6 J: g9 f& @
import swarm.activity.Activity;3 D* y+ Z2 y2 f0 z+ g3 S
import swarm.activity.ActionGroupImpl;; k: r' g/ e6 [0 u9 [, U! a
import swarm.collections.ListImpl;6 x6 D% a  E) C; I
import swarm.defobj.Zone; ) ~7 d3 L  m. E, a6 s6 l! [3 s; \# G3 w
import swarm.Globals;) m  J1 T4 |6 L# }2 v
import swarm.Selector;6 J* P, s5 I" c& {
import swarm.activity.ActionGroup; 9 o3 e- q, X7 @; Z" A/ V/ H2 w# m
class Agent {$ _) _2 Q6 [+ L9 R# e. z3 `
        char id;
3 X) \+ Z7 q1 {) q! ]
! [) e  L5 G( Y7 X) s# d' j        Agent(char id) {
$ P# S' F- q. \" e! a# `: O& }* }                this.id = id;
- \4 i. Q1 K+ o; X: d+ d5 W        }
# ]/ [% z0 g. Y& o/ K* O( }9 e7 b4 V. u9 d, g! P* B
        public void agentStep() {6 b7 s: n( H( h3 F4 C
                System.out.println(id + ":" + Globals.env.getCurrentTime());; J: V1 q+ F0 B
        }
, R2 l9 ^1 g, y( w% D: w}
9 R' Z! b$ O% k( O& o' ^/ _6 {" V; h1 O: `. M4 I& ]1 Q( B
public class ActionGroupDemo extends SwarmImpl {
+ w' S: f' V9 I5 @        ScheduleImpl schedule;1 J+ ]$ g0 e" s( V9 t1 Q2 S& F
        ActionGroupImpl actionGroup;
* b4 w5 w' h( u" J! ]        ListImpl list;5 W0 d1 x- I1 q) X- E) h, p
        char Id = 'a';; o/ n7 B3 z0 {& b' |. y

- o+ v2 X3 l5 J& [8 s- S! @8 s$ t        ActionGroupDemo(Zone aZone) {
0 N/ T; u9 p3 b$ s# k                super(aZone);6 c, o0 J1 l( S! E
                list = new ListImpl(aZone);
) U$ V  ~+ a) ?0 I) A                swarmSetp();2 ]8 P. ]0 K) J, |
                actionGroup = new ActionGroupImpl(aZone);. q+ o7 v9 g4 |" k% `+ A. T% b
                schedule = new ScheduleImpl(aZone);8 c! T8 O4 P' w5 |% o1 Z0 I
                try {$ I1 P6 N- g0 C9 V* A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 D* D4 T3 c" c8 ?
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 q5 N4 a, E( p: \: G
                        
9 k$ p. E! O& j$ }' r                        actionGroup.createActionForEach$message(list, agentSel);
% R5 c1 F! w, J  P- H7 W                        actionGroup.createActionTo$message(this, swarmSel);
7 e0 H6 p5 `' J: y: _3 A/ O  E                        schedule.at$createAction(0, actionGroup);
  a, c2 q9 b( D; i# [* j                        schedule.at$createAction(1, actionGroup);# U! i: `3 E- G, t& m
                        schedule.at$createAction(2, actionGroup);6 T, P- Z. h8 F/ C) I
6 V) X# L1 `4 x6 f7 V6 [( p
                } catch (Exception e) {
$ V- q1 q$ P$ n) c$ A2 I, p( G                        e.printStackTrace(System.err);# K* U+ n5 x1 T" T9 E, e
                        //System.out.println(e);: p6 @9 o0 t4 q. w/ m9 ~; _
                        System.exit(1);" w6 M9 n+ m' s
                }
( E- y6 K, G9 x2 M  {3 x: e+ G5 w3 r. b

+ w" u0 Y! x* V& W: x        }8 \4 P8 R/ a2 E  T4 I

! f3 q* y4 z6 U# T# n1 D        private void swarmSetp() {
2 ?+ J' W( U  @                list.addLast(new Agent(Id));8 u/ o2 P! J/ t
                Id++;
5 X( I7 J5 S8 z        }9 i2 w$ D3 u3 E( l' ]8 o
6 P2 g; ^4 R* s# }+ _: D
        public Activity activateIn(Swarm context) {
7 Y. r# _: V( M  r8 l6 t& S- p% D                super.activateIn(context);- V" `6 r9 W2 G% r7 S5 r
                schedule.activateIn(this);
+ P& i" k6 @; t) [' U                return getActivity();3 D& D' y& G3 P% J
        }$ w8 G0 I$ y! u( x. l8 u% Z

8 [0 d6 ?$ d' t/ F- s        public static void main(String[] args) {3 o# r& w  Q, I; U  ]! B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) W& y; A) r2 S! E& \7 Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 X: q8 \1 T( u& _) ^% F9 M8 g                swarms.buildObjects();
  ^0 g+ }! h% c5 ?                swarms.buildActions();
5 N4 o9 D% Y' a3 H                swarms.activateIn(null).run();
# X7 Q0 H: ^9 ^7 D5 n% r$ p        }5 j1 P* U+ v0 s' @

+ U$ I5 T5 ?1 p- ?$ \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-19 16:41 , Processed in 0.014098 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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