设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6623|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- Y* B: B1 }# n. S
# z' j( d, k$ M/ y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 r3 {* B6 u% \( R; H8 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: U) W* v" S- m
swarm.SignatureNotFoundException# a9 \( }% @$ k* U+ `3 w6 ~, k3 D
        at swarm.Selector.<init>(Selector.java:76)& _; ^; M) {* J8 W! R. Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ @3 u6 q  Z! p3 F/ A, r. J8 S        at ActionGroupDemo.main(ActionGroupDemo.java:67), V/ g9 `' z" H6 q% a

. X4 ]) z: S$ i# S
1 S3 C( C6 z  X1 i4 simport swarm.objectbase.SwarmImpl;& ~- Y0 F5 H* N8 d* S
import swarm.objectbase.Swarm;# x9 K; \, E, k9 R% K; V9 x
import swarm.activity.ScheduleImpl;
/ Y9 a% [" L& B: ~1 q9 q, t7 fimport swarm.activity.Activity;
4 @8 P1 z+ N" K( s. Q% x1 \import swarm.activity.ActionGroupImpl;* X+ `# E' f+ ~' H  d' @7 m6 P
import swarm.collections.ListImpl;/ Z& s" I$ S) g' s4 W0 f
import swarm.defobj.Zone; $ g: Z7 f6 X8 t7 E5 x( i1 R, x2 ?" l) z
import swarm.Globals;
1 N- q6 I- {; T4 m/ @9 `& U5 Timport swarm.Selector;* q  b& ~( p6 d- t
import swarm.activity.ActionGroup;
9 E0 U: Y% k: Y, [( ~* k# T5 Iclass Agent {0 A1 Z6 c% o4 u: E7 N1 c+ v/ }
        char id;1 q' G7 V5 s( U3 F

" ^! t! D0 V7 T        Agent(char id) {3 d4 C2 m/ A( Z' K; q
                this.id = id;
; C( r( h3 l( F3 l- @! v        }
5 j8 S+ h/ ]" F+ O6 |# Q( [" A* T& q% c+ Q4 t
        public void agentStep() {
4 y! ~6 k% R( |( F9 H! L9 ?                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ y5 Z& w6 |- s        }  @  W5 b$ p) a
}! G  \4 w3 Q. q. U4 F

6 o7 H" f3 C  g8 N" S; }# @public class ActionGroupDemo extends SwarmImpl {
  C: q& Y0 _( G; f) b$ O        ScheduleImpl schedule;
% U0 H* C4 I* N. o        ActionGroupImpl actionGroup;
' B) U6 _* z# g3 a( z; w$ S- Q        ListImpl list;
+ y+ U6 v9 l5 ?& q3 W8 S        char Id = 'a';
; A8 L" C0 c; ]3 q- A: c2 Z( y/ t8 E$ _7 N) C
        ActionGroupDemo(Zone aZone) {
% p2 S# R0 `% |6 ^: f, }* V                super(aZone);' m/ ^2 d4 P: g" `# p4 N. D
                list = new ListImpl(aZone);$ n! o( B( _+ E  P) b
                swarmSetp();- f% W6 R' J% l, L5 W8 g+ M
                actionGroup = new ActionGroupImpl(aZone);
- m+ [1 k  ]/ w4 ~+ F                schedule = new ScheduleImpl(aZone);2 q; ~- B# h* B/ O4 `( i# R
                try {* j9 ^; ?: }4 U- }( X0 ]& G* N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( L' x. e+ z  g$ ~/ L, k* A                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# V6 W, j* `& i5 g2 i) A
                        
. L; @/ l( n  Y; @                        actionGroup.createActionForEach$message(list, agentSel);* Q5 \: t; h, {1 O$ \
                        actionGroup.createActionTo$message(this, swarmSel);
; }) A: {6 F, W( \, K6 n                        schedule.at$createAction(0, actionGroup);, W; {; ]3 J" b: |5 L% q# Y7 T& s' C
                        schedule.at$createAction(1, actionGroup);# {: B' ~! \' Q7 J5 k
                        schedule.at$createAction(2, actionGroup);( |- [4 B& J; H( D

, v. n8 K4 ~; |9 X                } catch (Exception e) {- |' ~: _- F7 z
                        e.printStackTrace(System.err);
+ k6 k' Q! J: h  s! K0 C3 z                        //System.out.println(e);0 A8 Z5 P: u7 {0 H4 _  l: O. |
                        System.exit(1);
( t8 S; J: A3 N5 A! j7 p: Y! h                }
+ |0 ?6 L8 A* W1 a+ W) ^  p2 A) E" Z
2 {' L/ U8 d! B- W8 z. ~8 k6 H) n- o- E9 O0 l# M  R
        }
" _0 I, h% l/ Z" T9 I5 ~. A& a: J, D
        private void swarmSetp() {
2 Y8 h. v7 ~) g. `) u                list.addLast(new Agent(Id));, F1 d6 y) G, R$ n: g; A  H
                Id++;! Q. E% l0 A2 w6 R( s
        }  e) u. I9 H7 k  h
3 t4 u  j* P  y$ m# V4 |
        public Activity activateIn(Swarm context) {5 c) P) P9 P& s8 b
                super.activateIn(context);% t! ^; [) p& a8 b3 A6 |
                schedule.activateIn(this);) C# P! T% f  n; S" l9 s$ z7 m
                return getActivity();
4 ^/ ?, o: A5 f1 u1 N* a' B6 f        }
' f# P! @  A, t/ P& U& p3 u& N/ W; T# |
        public static void main(String[] args) {0 r$ M  B* ]: Z% B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, ]: C$ h, a( a; k8 O6 w' o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 D/ E4 f" n: Z( q: a                swarms.buildObjects();
; W9 _0 K- f( J# w7 _* n, |                swarms.buildActions();6 P* s+ o1 j3 {$ a% D6 L5 ?0 i  L5 e5 P
                swarms.activateIn(null).run();
% ]) j: f- H) M' P, l- b        }" Q" {8 x& i1 D, @8 z$ |; Y$ ?) @
1 G: n) y) j) K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-3 12:43 , Processed in 0.018244 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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