设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8748|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 y% _5 O# z, l* A* m" g0 s
3 S, F- A9 r# l: W* f* ?; w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 N( p4 D* g) E# t6 Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 ~- Y0 f) l$ E4 b; ?
swarm.SignatureNotFoundException
( G/ p  \: d, @/ ~  T/ C/ H        at swarm.Selector.<init>(Selector.java:76)
! \: i6 N' G# \/ s% [! x6 @# ?        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): }# B# I5 L& M  v8 g1 |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 g2 c9 r* h+ |9 ^+ n8 g8 e; s9 b6 q# f

. N6 b. D! Z' N6 s' A9 y4 u0 L3 Dimport swarm.objectbase.SwarmImpl;0 r8 c$ T* E& `+ l- l6 k
import swarm.objectbase.Swarm;0 |' l" Q! J  j7 x0 a/ b
import swarm.activity.ScheduleImpl;- c1 O9 x9 r7 q
import swarm.activity.Activity;+ k% Q: B' o$ m# G) ~" V3 [
import swarm.activity.ActionGroupImpl;, r0 {1 [6 o- l- ]( A
import swarm.collections.ListImpl;1 j3 L6 G& h. V( g& X, d
import swarm.defobj.Zone;
1 `! Y( K% J6 Z$ j( V" Gimport swarm.Globals;
0 r; N3 L$ P  y, {7 D' o) simport swarm.Selector;
3 x: }' b0 i  Aimport swarm.activity.ActionGroup; 2 |2 S$ @- V* f
class Agent {4 I0 H7 n6 t- S, i1 Z$ R
        char id;( Z: b; Q8 C+ F2 g, g9 M
" f( h! ~, w- q7 C/ C; g0 C
        Agent(char id) {0 J3 k# N) N$ ~4 @4 T! u
                this.id = id;
8 v/ T! r- u( p; \) d        }  ]  e, t" z5 c! ]8 n1 b

3 w) x0 Y3 s2 d/ C0 s        public void agentStep() {
4 |6 }+ r  @1 O5 u! {2 S. ~                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 y1 K; E8 v) b! H        }  _' o' ]! a- w& D
}
$ y, @; ?- U. o; B* K! D, e' H: T2 e# v7 H/ h5 v0 m  i$ b
public class ActionGroupDemo extends SwarmImpl {
" w' C: \' }" ~' M" Q# A" @        ScheduleImpl schedule;
8 q; a6 k) h: m; y1 G        ActionGroupImpl actionGroup;" y" I; ~  G! a5 g( J
        ListImpl list;) u& e/ }* C$ ]. l
        char Id = 'a';. U! ^: S. {- J& W
& c- O( d/ g2 o( M; \6 ~
        ActionGroupDemo(Zone aZone) {
/ C' z2 e1 ^. w  {0 P                super(aZone);  t" X' o( b7 u( r% v- d: _( {
                list = new ListImpl(aZone);
# b1 g/ r5 {8 b                swarmSetp();
. b5 X; ^6 _7 _1 X                actionGroup = new ActionGroupImpl(aZone);
* W8 n* m- ~" x1 Q# l4 _) Y( ^                schedule = new ScheduleImpl(aZone);
% b. q: U/ y0 P  [; h# s4 D                try {* v8 x+ V1 P7 N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& W1 T! j+ T: `  G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ X, x% M$ l  x$ B, p$ V
                        
9 J6 m% M" L* X3 H' P                        actionGroup.createActionForEach$message(list, agentSel);
1 ]# O1 C% ^2 v5 v1 |                        actionGroup.createActionTo$message(this, swarmSel);
- f# f' D& S4 Z, d% N. N/ G                        schedule.at$createAction(0, actionGroup);
5 f/ ~* C% h0 H9 o                        schedule.at$createAction(1, actionGroup);
0 y. K- f% i. ^( F& U: ]' d; g9 U4 }/ s                        schedule.at$createAction(2, actionGroup);. I0 E) V# q$ e& i2 x4 u5 o
! v0 @  L; b) Z" E
                } catch (Exception e) {
4 U: p9 f4 e% x% D7 C+ Q/ I! B                        e.printStackTrace(System.err);
7 Z7 f  k& V/ h& Q# n                        //System.out.println(e);  `6 q% R% i, i1 t* b
                        System.exit(1);+ J' }- A7 M1 {, V7 r4 E4 a6 W
                }
5 _4 B' g' @. L, S9 F+ o$ G3 F  p7 y7 \: z& F& V' ]. z
2 c8 j( g, p9 W1 j, k! h1 g* R/ m
        }
! U' r! P3 k- ~1 X2 k4 `% }0 c3 f
; A$ X( L; m* p4 G/ `4 g        private void swarmSetp() {
+ g% X! i$ ^# b# v3 [6 T  u                list.addLast(new Agent(Id));8 J5 P* {; F" A2 I! E5 M  k; R9 G
                Id++;
8 R% s( E) t+ }( @        }
2 \/ l% w& A5 j2 e5 i
" F- _, y5 [( t9 o        public Activity activateIn(Swarm context) {
8 t, t$ j' e9 C9 p7 ]1 Q                super.activateIn(context);
) G- q  s" D) B" @# a& k                schedule.activateIn(this);- w% v6 z9 A& j/ }2 H! O
                return getActivity();. I. h$ e; H9 g* Z
        }
; ]9 D7 s3 j6 ?. Z4 q7 a( y& ?, P7 x3 d) G( i
        public static void main(String[] args) {4 w# {8 |8 u! O  n+ X5 m
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  u/ W3 o4 N% {& M                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* H0 N( T9 c2 ]& r$ G
                swarms.buildObjects();
, \; Y4 P+ P( G                swarms.buildActions();
2 `8 U: z  E& M* G: x" r: E2 s                swarms.activateIn(null).run();$ L( `) T6 D0 w/ P& i" y
        }' d& A" f3 ]7 q0 F- Y) _; r2 {
, y4 d. j4 m7 ^! o8 f( ^1 g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-21 13:21 , Processed in 0.017191 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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