设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9121|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( x  `/ ~% q0 v3 T8 i1 [1 h$ l( d9 G# @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ l& c" S# `: ~; U/ F  o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 l7 {+ }! p, T0 O
swarm.SignatureNotFoundException4 r4 K6 |' V! p
        at swarm.Selector.<init>(Selector.java:76)
; a& k' _! g3 w3 p: A# N        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' x% u3 b4 E) }1 O- Y0 e" l$ ]        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; \- `9 w: F- v5 t) g8 B! l2 f/ Y/ [; u9 e7 O+ v+ t

9 g* [2 B$ }3 F$ B: `import swarm.objectbase.SwarmImpl;, |/ ?! \: d  v4 P. j
import swarm.objectbase.Swarm;
9 g* j0 _6 D& {* j* k' h2 s7 eimport swarm.activity.ScheduleImpl;, l: s/ `  k7 ?; y- F
import swarm.activity.Activity;& u3 D8 O4 ^" K  e  r
import swarm.activity.ActionGroupImpl;
3 E8 y- e9 g* H& J! s* ?) a$ pimport swarm.collections.ListImpl;
7 A! d0 {9 o8 q/ c3 ~import swarm.defobj.Zone;
8 m$ l7 q3 J- pimport swarm.Globals;
! I. B0 D" l3 J3 Jimport swarm.Selector;
0 ~( W$ h/ I  X- W, Q% {! ~import swarm.activity.ActionGroup; $ y! y+ J8 z0 e  o. b% G  X9 ^2 r
class Agent {
6 ?1 y2 Z$ R( q5 S: O5 @* R" o        char id;: L# K# V0 Y) l# N6 G

# Y4 t2 J" N" ]# l0 M7 w" t  h        Agent(char id) {
- l1 ]' N0 @: Z4 r                this.id = id;/ X) x/ O/ v8 R% Y
        }; S8 B& y4 O8 `. v; E+ o

/ V& b6 A+ m; c9 `+ g+ ?        public void agentStep() {
% z+ m0 L0 J4 e# O2 M7 o                System.out.println(id + ":" + Globals.env.getCurrentTime());9 ]) r$ k3 J. u1 L
        }# \- H8 m' Y1 G. J* M
}
9 `6 }" M4 h* w! X# p* J% ^0 v4 [) u& Z- r
public class ActionGroupDemo extends SwarmImpl {% l- z( z1 S+ U- z
        ScheduleImpl schedule;7 P' r. ]/ x: ~7 |6 G8 D
        ActionGroupImpl actionGroup;: C# ^7 E. i9 G) D: w, Y
        ListImpl list;8 r* r4 _  `7 T6 ^5 K& i
        char Id = 'a';) G$ u6 O' @# p

# A2 D. C! J* a0 }$ O1 @        ActionGroupDemo(Zone aZone) {% ~4 [3 X; T% |7 M: A' P0 q3 F- y
                super(aZone);
" B  S& U2 w. G% J& q, n                list = new ListImpl(aZone);
7 r& p- K9 j9 S  |% K, W                swarmSetp();
" S6 ^1 h, y+ R# |- W                actionGroup = new ActionGroupImpl(aZone);5 M/ Z8 m/ I& y- }4 w8 c4 m
                schedule = new ScheduleImpl(aZone);0 W6 B5 K; R/ F& Y' ~+ y
                try {
( u1 \" r7 Q3 H" J) p                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& O1 K# C  x/ ^2 B7 ]( y/ w& `
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 Y6 \# v  o, I8 @! F3 [                        / q4 m" Y/ n, x  j
                        actionGroup.createActionForEach$message(list, agentSel);3 f# Z/ ~  B: p( M
                        actionGroup.createActionTo$message(this, swarmSel);
6 k! [3 F' q; x$ {, M$ H                        schedule.at$createAction(0, actionGroup);
3 d% u" C8 t; Q, R/ b- m6 X3 _& a                        schedule.at$createAction(1, actionGroup);0 h; S  q4 J7 E$ U8 E
                        schedule.at$createAction(2, actionGroup);( }7 O. @5 b" _' d8 Z- [9 O

2 b% v& V& n8 y$ G# D3 g$ c                } catch (Exception e) {7 g4 ~0 ]( `' Q: ?
                        e.printStackTrace(System.err);) V- O, O! A" u+ M6 T$ j0 X% O
                        //System.out.println(e);
$ [1 l$ b, y: b                        System.exit(1);9 d0 L5 y: L& w! X
                }
: B% C) z. k7 k7 }5 k2 C8 `, U  o. ~# _& |9 L3 I. ?
% J" N+ u8 F; J/ X
        }
3 f" ?' T- N! `5 ]# F8 H7 `& A+ m
        private void swarmSetp() {
$ l% T$ G' H: F                list.addLast(new Agent(Id));5 [( H" |# L- @" \
                Id++;7 @8 _: F- W: p
        }
4 p; n* ~& G  U1 U: {# |
, n! ~5 j6 V& N5 h0 j* m4 }" |        public Activity activateIn(Swarm context) {
! Z; Z. ^7 Y( F- `+ t                super.activateIn(context);' M/ ~! I2 i& y1 n. f0 K& o7 q
                schedule.activateIn(this);
) z" E6 U: Y* N* ]3 p3 b                return getActivity();
; |/ N# z$ t3 Y* t0 A; p$ S8 n/ T$ U        }& P- e2 }2 Y! U: f( x
8 r0 f1 P$ s) j+ l
        public static void main(String[] args) {
7 |( Y' S" A$ Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 o$ g& j. w& P0 r( U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) d! _/ M- ]' m8 J1 j* w* P
                swarms.buildObjects();; X4 D/ s1 C# h: t! F' [) ~* [2 z
                swarms.buildActions();
3 j3 _! q: L) Q& X5 P! u9 U6 q$ f                swarms.activateIn(null).run();0 x, ~# X( P% f8 I
        }
9 V9 ~6 B+ b* a* T% L
+ p9 ~# K4 ~+ L. t# |4 Q4 T! @! M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 01:14 , Processed in 0.017419 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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