设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12962|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! H. u( ~: y0 i8 _( c* y4 U, k# I$ v/ t- @- k, u' G: j  `; l( P  i) f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% S$ c+ g, f; [3 W, g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' f& [6 \, \4 J9 \- r% T
swarm.SignatureNotFoundException& F. s+ w* \. @; G$ u
        at swarm.Selector.<init>(Selector.java:76)& J- s6 l4 P( `& Y3 O5 M! a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 D8 c5 J" ~7 C3 r$ D
        at ActionGroupDemo.main(ActionGroupDemo.java:67): x$ ~3 a7 i0 Z4 {! r9 |

' g; r8 e- U7 r' \/ |7 L( c$ V# g' U% d# O3 `
import swarm.objectbase.SwarmImpl;3 f- L: X$ I" i( W6 D' e  j: u' A8 w
import swarm.objectbase.Swarm;/ b8 w. R+ o) T
import swarm.activity.ScheduleImpl;8 k) z, E! |" F1 Y+ H
import swarm.activity.Activity;
7 r  a+ |0 r& i) @" K3 r) gimport swarm.activity.ActionGroupImpl;
! k& {" w( ~: W; W8 ?- }import swarm.collections.ListImpl;
8 v; A+ R/ m& Q$ o; R# w; Ximport swarm.defobj.Zone; 1 e5 q* d8 _  N% i1 ^; B
import swarm.Globals;
: N4 k8 R. ]# A4 B2 V) m* aimport swarm.Selector;& O- V6 S) F) t2 h. y) v( z6 s
import swarm.activity.ActionGroup; / k, ]/ u, K+ {& r& W/ q9 k1 l6 \" f
class Agent {' R0 h2 I7 \1 ~8 |
        char id;# s4 S, |+ d1 s3 G2 T+ A

+ o, _$ a# c5 A        Agent(char id) {
! d4 {4 ~7 M9 A7 s; Y: Z                this.id = id;
5 o- E2 i8 ~6 a/ n- B        }6 A* ]$ m- M# S- Q

+ |0 W# [: p9 ~+ g        public void agentStep() {
7 I, [9 h1 e4 c3 e- T; u                System.out.println(id + ":" + Globals.env.getCurrentTime());
. }" Q/ J# k0 n) H        }
5 O) y. |0 [! j8 S! d, W5 s( I}
* Z9 U; c' \# d7 I% A# b3 X* D# B. x: u/ j" ]
public class ActionGroupDemo extends SwarmImpl {
3 P) y& A4 [% k6 M1 b+ Q        ScheduleImpl schedule;5 |% ?7 `* A; e
        ActionGroupImpl actionGroup;6 n$ w4 |/ F" D
        ListImpl list;8 u1 k9 x; c+ [9 m5 j
        char Id = 'a';
& A/ r) o! o) E# H& ?
6 [) ~' _. g" o; s" m        ActionGroupDemo(Zone aZone) {* \7 y1 F( _2 M& {# V$ i) t1 W' Y
                super(aZone);
  P+ I( `! G5 K4 m$ S: `9 k  s( r                list = new ListImpl(aZone);
5 `, o+ Q- \. @* F% p9 y                swarmSetp();( m/ v- E# C( K; x, W+ \  P& c
                actionGroup = new ActionGroupImpl(aZone);4 z; [6 r7 Q5 Y, [6 h
                schedule = new ScheduleImpl(aZone);
0 Y; d( a* R0 E! G& C- r2 D                try {
* q" c# Y6 [2 j6 N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 G' Y8 W9 f2 D+ H. g5 h6 r3 u
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 a6 Q! x4 r/ l. r- B
                        
* x/ H: s! G5 V! R                        actionGroup.createActionForEach$message(list, agentSel);
+ w  z+ r! B" X9 x( u$ C1 _9 W                        actionGroup.createActionTo$message(this, swarmSel);
. q# Y' P% Q3 h( Q) M& g                        schedule.at$createAction(0, actionGroup);
" H1 H! a+ ?# `! n: T- [                        schedule.at$createAction(1, actionGroup);
) r! r5 F1 w/ r) L. i& \                        schedule.at$createAction(2, actionGroup);
2 ?- |! L# E7 {$ K# J
; K  o8 \+ P- N6 x- ^$ s3 X                } catch (Exception e) {
8 M0 I) o& W% S+ U* `                        e.printStackTrace(System.err);
& v2 h4 ~2 c- ^5 Q% e/ V9 a                        //System.out.println(e);& _# C" P- f& T8 g4 K* O
                        System.exit(1);
1 @/ p% x, }1 P& c) v$ ~( o7 _                }
$ n+ d, Q1 P# h) f! P$ ~9 |( D, D$ P2 Z1 L; Y

+ p: v( d3 w6 Z' T' ^        }
$ o" N: V7 o$ I" U+ q) l. k, W- ^: x" U" O: K
        private void swarmSetp() {+ W! @6 J  X3 ]8 u; S
                list.addLast(new Agent(Id));8 u0 V" h: _( @
                Id++;
/ R& {9 ]) i5 l5 z( b1 E1 [        }* i' j$ E) S4 i6 j8 _0 r) z
( o' B" }1 j/ B/ Y4 m. F! m
        public Activity activateIn(Swarm context) {
9 }8 m5 Z6 T( U. S                super.activateIn(context);' q9 \% {; ^' t% }" E- [# P% V2 C
                schedule.activateIn(this);
5 C* ]$ z7 ~/ e3 z! d                return getActivity();
# n7 w8 ?/ g2 s        }
5 x1 f4 @- Z7 V& l5 I  H9 ?" o) q! J) O6 V. H
        public static void main(String[] args) {
, g# N. B- }  ]7 A7 l3 H                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& l/ b; w1 s8 z" R/ |
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ D/ r7 e6 ?4 D+ O. A, }                swarms.buildObjects();( q8 J; c" y8 R
                swarms.buildActions();- C1 N$ I, }7 z+ ^
                swarms.activateIn(null).run();
4 m$ ?6 j! u) u" R, [        }. z+ p/ Y: Y# V# |& d

- X, ]  x; ^0 ~3 S" c% A% F}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-24 09:15 , Processed in 0.017048 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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