设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12503|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . U5 t  I" |/ n4 [& o5 o) l

% S2 y9 z3 `9 @. A, b( \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" Q. u9 `5 ]& X, J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 i+ w, Q& A, J8 W9 n8 v3 ]
swarm.SignatureNotFoundException
3 q& I, z  j  `2 Y2 x; R        at swarm.Selector.<init>(Selector.java:76); W2 V8 q% l3 o) a0 w6 o0 c
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), D8 h1 u( Y% E) w
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 g& b5 x& z" m% o% l
' R" `. _8 i  \7 o+ H# v4 @
3 b  B) G( \. z8 D* p2 vimport swarm.objectbase.SwarmImpl;
# W$ a2 o. K  J; ^! @0 gimport swarm.objectbase.Swarm;4 o2 r9 d# a4 V7 m2 ?
import swarm.activity.ScheduleImpl;8 ~4 U. H; w% `: ]' Y+ i( u
import swarm.activity.Activity;8 k6 i) C1 x( }5 W" D) ?
import swarm.activity.ActionGroupImpl;
" k( e# B7 k' u4 A8 Ximport swarm.collections.ListImpl;' y! v7 o2 n# N! o+ k
import swarm.defobj.Zone; 5 `# x3 x5 x) S8 `5 U
import swarm.Globals;( l8 q5 m& J8 X9 w
import swarm.Selector;  E& I+ f; I4 \2 f" T
import swarm.activity.ActionGroup;
+ k1 n& L! t: I3 {) Z, dclass Agent {8 g& w3 o# H/ M! W  H+ K0 X
        char id;% H+ v) p) ?  D1 l5 D4 A3 q

- o6 Z7 _8 p) S9 z        Agent(char id) {7 p7 K1 A7 p1 U" Y. y
                this.id = id;. e- V# w5 a2 c( w. X' `2 |3 G
        }- S% H8 e6 |0 r# e' v. S. F' c
3 Q  ]9 B9 a. g7 |4 \9 N5 R
        public void agentStep() {8 g" u; J% i4 u0 T" @4 s( o
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 [6 ~; @1 {, o1 }# V
        }
. r# B8 k6 L; G! F/ Z  T' E3 ^# N. o}
3 W6 o0 L( u0 {' a5 b/ c4 @; Q4 k& \9 H. f3 Y
public class ActionGroupDemo extends SwarmImpl {
7 `: t7 s+ K0 Q" @7 w        ScheduleImpl schedule;
' t( P; E7 E  O7 H+ w+ r+ o        ActionGroupImpl actionGroup;8 ^/ u/ ?7 ^" g
        ListImpl list;
- {/ \7 }, z) X4 E        char Id = 'a';+ \: Y& b  V! S0 y; [

2 [" s% a6 c, j. D; D        ActionGroupDemo(Zone aZone) {
1 S/ u* Z! m; O$ N1 n                super(aZone);4 I8 P# a4 X+ r+ L4 x" ~6 |$ W. @
                list = new ListImpl(aZone);
0 w0 S5 D1 g4 Z( t4 A6 Z# i                swarmSetp();1 v) l7 f. j' H0 n: @& {: V
                actionGroup = new ActionGroupImpl(aZone);% f. S( P! J# _2 J$ \6 z; c7 n
                schedule = new ScheduleImpl(aZone);
2 k) Q" M0 \; `' O/ Y, U+ a& @6 R$ M                try {* {# J. j" I# a" J, B6 G1 {
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 G* h6 k" p  D: X! u1 L, Z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 M1 V: _' [# n: p
                        
) ]& V" G+ P3 M& p0 ]% R                        actionGroup.createActionForEach$message(list, agentSel);
/ L6 Q3 U, e9 v8 c                        actionGroup.createActionTo$message(this, swarmSel);
6 z0 J9 g  s& Z$ y                        schedule.at$createAction(0, actionGroup);/ j8 N- x- W) |
                        schedule.at$createAction(1, actionGroup);
! H1 n1 K% A% J                        schedule.at$createAction(2, actionGroup);
- j+ H& F* X2 U( U- y
3 w3 V2 r$ S! t7 c3 z# Y& I                } catch (Exception e) {
3 ^) Z- @3 `. g3 }1 o                        e.printStackTrace(System.err);
9 ~7 d+ |/ {' ^3 I) e" G5 x                        //System.out.println(e);
! d9 d* P8 n, O0 B* o  I' J6 C5 H                        System.exit(1);1 |5 f/ }; z, L: K* @: X4 i8 i
                }
2 Z0 i" D. Z: ^5 ^7 o- G
1 l* _8 s7 s& u
* a+ q; i% S. p* `* q+ C. A0 f; Q. c        }' x, {. e' T$ x/ ]- e( Q, \
& U" W4 p. g$ }9 W
        private void swarmSetp() {2 }3 S' \% q, ]/ J; [
                list.addLast(new Agent(Id));
) Q2 _. Y9 ]( n; V) u, U% T                Id++;# |7 O. p* }4 d# a7 T# t0 I! t  a
        }
* x- H( K* V9 {  V9 A, N, q  f& Z# f& Q9 B, k- N1 a7 ^: m5 y
        public Activity activateIn(Swarm context) {& ^/ T3 A+ f  q' w% D8 I: S% O; _* w
                super.activateIn(context);' M! G% z% u. @/ F/ @( S6 g
                schedule.activateIn(this);+ I: t* X7 O+ _3 h% _
                return getActivity();
6 g% W; `0 y( \: T. |7 P        }
+ [: m8 e% p# K: b/ ^' E3 l1 s
7 A6 I$ m3 [, g; N. \/ Y7 O. m$ N        public static void main(String[] args) {1 |1 {2 Z8 i8 n) @1 Z( l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# _- e3 s  E; c3 P$ }" ~
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' B3 y5 ?* q" ]6 J1 k0 Y
                swarms.buildObjects();
; N% L2 }5 ?! x                swarms.buildActions();
0 N5 Q) P9 `9 c& s0 n                swarms.activateIn(null).run();# s- m; J% m5 }9 G: j
        }, R5 `- j1 A; r# n5 T: M
6 ~  B$ i- ], A/ E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-10 15:46 , Processed in 0.017678 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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