设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13334|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 m5 A. h3 r) g: e9 `5 `1 B/ @( m2 H
% d' H1 r* I2 [7 X  G1 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 ?/ G8 \4 @6 x1 _( A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 x7 M5 k+ b3 T5 @9 k3 J8 F" ?; C' n3 @swarm.SignatureNotFoundException2 h3 H. \9 L8 f9 Y4 a" x6 \6 i" m
        at swarm.Selector.<init>(Selector.java:76)
) b1 S) E' p, {4 \: W  ~  b; f  {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; p  }% O" D- h' k+ h* E- q        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" d0 i4 p3 |4 p& A* N/ P
5 z! {5 y* d8 w: k. J2 d
" @( }( W, d2 Y! @7 [9 z9 }4 Jimport swarm.objectbase.SwarmImpl;
& l8 [2 I0 V$ c6 C5 j" C3 iimport swarm.objectbase.Swarm;/ k* l4 b. s" _7 D& |4 s
import swarm.activity.ScheduleImpl;
& _; m' k) b8 Wimport swarm.activity.Activity;: `8 L: W1 ?0 X0 I5 A3 `
import swarm.activity.ActionGroupImpl;) m, N/ x2 P5 M0 e3 b
import swarm.collections.ListImpl;0 d) `- A2 X1 S( S
import swarm.defobj.Zone;
8 F5 [' e$ l4 r: C5 T1 c0 ~import swarm.Globals;
8 ^# D5 ?5 D+ g* ^, M* U$ oimport swarm.Selector;% [) F. }; s0 x+ s+ F
import swarm.activity.ActionGroup; % W3 o3 Q) n9 G; J* C8 q# c  O! N% M
class Agent {8 G- {1 k2 y* v& [" x0 R% P8 a
        char id;/ g5 |- U% W; h. Q
9 h( O& f  d5 m9 ?* P8 V8 R$ Q9 W5 h  E
        Agent(char id) {6 p! r  A* ]& l, C3 B
                this.id = id;
: l. V8 l" E9 n  d$ o* u6 y% c        }
( M# }* G( K, Y' f9 t8 G0 u7 x; a. U0 s  b1 H  F
        public void agentStep() {
$ _$ @" I( k) Z2 u, j3 T' [                System.out.println(id + ":" + Globals.env.getCurrentTime());
! a2 P# X# o+ I7 ~        }, `; ~6 G6 F; E
}
7 e" a* k3 h, Y+ q4 B% a  Y* }2 g& o6 i: |
public class ActionGroupDemo extends SwarmImpl {5 c) E4 h. h8 K! V+ y
        ScheduleImpl schedule;+ K0 l' ?+ A/ |; j$ }% m3 u
        ActionGroupImpl actionGroup;
/ J& N2 S3 _" b) K  o# [        ListImpl list;
; W0 u8 [# t0 R3 l; i        char Id = 'a';9 W0 ]+ T' v. O7 T+ G( d

, p4 A$ U. E) o4 V        ActionGroupDemo(Zone aZone) {
7 Z% K0 }$ ~1 k% Z5 Q1 m% c, d7 V, G                super(aZone);
& b0 n4 g/ e9 u7 v% t9 L2 T; L2 y' G                list = new ListImpl(aZone);
9 Q& B6 i' F* \) h1 k& s* q( g                swarmSetp();( b3 H0 z6 r$ Y. ~% j3 d0 c
                actionGroup = new ActionGroupImpl(aZone);
' Z8 l5 G1 k! i2 b1 J                schedule = new ScheduleImpl(aZone);( M! ~& Q  r3 }; w+ ~! P* D  [5 }
                try {* d3 e, P' U- ^* W: r8 Z3 `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; X. B$ p4 U3 |7 ~1 _8 f0 t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- N, x- }. ^8 M
                        ) P- j8 i- U% e
                        actionGroup.createActionForEach$message(list, agentSel);! l, _* u0 Y: ^2 n% v7 ~7 L: m
                        actionGroup.createActionTo$message(this, swarmSel);
2 q; o$ U6 u/ `' U' j' I: a* f                        schedule.at$createAction(0, actionGroup);+ F# U+ {& }- h. m6 E
                        schedule.at$createAction(1, actionGroup);
6 {, A# ]) V& P; u. m/ i. y$ {) Z                        schedule.at$createAction(2, actionGroup);
. U( U) Z* Z! X& v, k- n
$ {7 t5 R: p- Z1 H                } catch (Exception e) {4 y. S% v# I- [3 M! U3 D5 ^
                        e.printStackTrace(System.err);
3 L: ?) \8 E8 y0 K( Z4 B                        //System.out.println(e);! H7 o! }5 ?: R' A# A
                        System.exit(1);
& q  E+ |8 @2 w, ^5 I* K; |* o                }
7 F# e4 w" [7 y+ J0 H+ ^0 A
" o' {, m) X7 e+ p: _% Y+ N& z* _# z7 L" Q
        }& L" b) s5 l( X) P4 n) U) U% M8 F

0 [& a- J9 N& b% x  K/ H( \        private void swarmSetp() {
8 ]" U: B: ~# h6 S                list.addLast(new Agent(Id));( b# K9 ^" C, Q0 E1 R! u  D
                Id++;1 S/ c* y9 j5 m: s* O% s$ J3 w
        }! X0 Q* X$ @; g2 g# \6 d% A& M" G

& s9 u9 U$ ]5 l& a3 `, }& D        public Activity activateIn(Swarm context) {$ k4 h" V# F- ^% Y4 U. V- h, u8 {
                super.activateIn(context);9 L4 T# b! W+ D& v; w
                schedule.activateIn(this);
& P! k3 H2 S7 F) F6 m' H8 \                return getActivity();
- _, ]- {' W' ~, f        }4 D. f% z* V* f, g
( h( n) N( Y; r6 t$ G! j2 K( A
        public static void main(String[] args) {
8 O1 L/ P# [* o: a9 W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* l. h5 V% O* \5 P3 A5 T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  V! z4 b) j, V
                swarms.buildObjects();( l3 M# w. v" \6 F+ |* K; F. _) k8 s" i
                swarms.buildActions();
& |0 U6 n" M6 W7 h) M: U                swarms.activateIn(null).run();
3 N* c" P9 d$ K        }
, Q" f' T2 G! W2 j8 ?
+ m2 G* }; b. c' [: G1 w) S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-4 04:03 , Processed in 0.014369 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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