设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12684|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 }& v' x- S8 r0 s# [* n8 q6 J$ P% G4 [! p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; n) d) D7 \, i: |8 s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- E' ?( v' n, A- G; l
swarm.SignatureNotFoundException
8 C8 |, z1 `5 I$ L* h$ [: b        at swarm.Selector.<init>(Selector.java:76)7 G9 f8 S; k& v9 {# f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% M6 z9 Z' l! l
        at ActionGroupDemo.main(ActionGroupDemo.java:67)  v- O6 W' j% i' \- b' \, |. w
2 M0 u& b5 Q4 w; n

$ [' {: \3 O9 H3 F" z7 Z$ U, ~4 n9 b) gimport swarm.objectbase.SwarmImpl;
( D& `9 B$ H% u  uimport swarm.objectbase.Swarm;" m0 N) Y' I8 w0 q
import swarm.activity.ScheduleImpl;. u  b8 _4 U3 w+ w9 b9 E* H# A3 X( H
import swarm.activity.Activity;
! z6 J1 @0 @2 t% {" E: a6 himport swarm.activity.ActionGroupImpl;6 }3 p  z2 w3 k1 m- D2 D
import swarm.collections.ListImpl;
: b0 p  F2 d0 j5 d# E) k0 limport swarm.defobj.Zone;
, o' w+ w  Y+ l3 `import swarm.Globals;
- [( ?5 x8 Q, z6 y% j. K, ^! v( _6 [import swarm.Selector;
2 o6 {2 ]4 d& l; d$ Simport swarm.activity.ActionGroup; : l5 M% O% t- F
class Agent {
2 k, [7 g" @8 b, I; \7 R$ `8 i        char id;
, B7 l: z: j( Z1 {* }9 b" U: Y, K. q1 [( r. |4 ~
        Agent(char id) {* O+ ^# Z8 k9 h  ~* c% |
                this.id = id;6 P# m( s4 o2 b; o. K/ w" e# d
        }5 H  j+ ~) S$ }$ A8 q

! @5 E5 Q6 K' A) f0 i" U9 y        public void agentStep() {
* I( f) {6 s% G                System.out.println(id + ":" + Globals.env.getCurrentTime());
" Z2 K, G1 [$ f4 q* m        }
% |, [$ X6 K: q/ E5 A}
. {) ]6 M! n0 r) f0 n; z( c1 f9 A8 ^3 S; A
public class ActionGroupDemo extends SwarmImpl {8 X9 k3 \7 Z) y
        ScheduleImpl schedule;
/ B) I6 A# U8 a, q+ G        ActionGroupImpl actionGroup;
5 K( l; u0 e! _        ListImpl list;
: q) v8 A+ u6 ?, q/ x5 ]; T        char Id = 'a';
6 H1 f; e5 I* ^( `, X8 h& G6 c
. Y# r# Z, b: t$ P6 u        ActionGroupDemo(Zone aZone) {
' y/ E9 @* [+ z" S, `# |  Q+ y  M                super(aZone);
" A; P! E4 c) a: X5 e                list = new ListImpl(aZone);. D6 U+ Y/ c# l
                swarmSetp();3 k8 ]- B- Y1 r7 [7 u  x
                actionGroup = new ActionGroupImpl(aZone);. s8 W8 O7 \4 ^( N) O
                schedule = new ScheduleImpl(aZone);; \+ E% i& g. W) B+ o, a
                try {  L. ?+ d% X1 x9 f. y" Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% |$ x+ D& ^0 [1 U* \6 c( n6 U  X; M
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 H$ y" B* O+ T8 H, ~/ g
                        : z) @0 [' F& `# ]$ p' `4 L7 J
                        actionGroup.createActionForEach$message(list, agentSel);9 n4 ~- x) y/ s( y& w2 `
                        actionGroup.createActionTo$message(this, swarmSel);
( Z) J! K$ z5 \, ~# M  s                        schedule.at$createAction(0, actionGroup);* t0 K, t1 Z# \, i/ V. z7 W7 B2 l
                        schedule.at$createAction(1, actionGroup);4 d! L+ S% W% G& m5 r2 J7 c  P
                        schedule.at$createAction(2, actionGroup);
  f/ `# F; V2 a9 K/ P, m3 w% I4 `! I
# r$ Q: M2 u7 ^. k. K1 E2 m3 L. a" c                } catch (Exception e) {
' e" `0 H2 t* f% G# ?: a) H" P                        e.printStackTrace(System.err);9 o- C3 w4 s9 L" s3 U: v
                        //System.out.println(e);
+ l9 F) [5 m) }* w                        System.exit(1);
7 G/ \/ s0 j1 O* k' E0 D; v! \$ D                }6 n/ Q+ W4 L* v2 V* D# X

, D; ?2 {0 ?9 N0 {( r% s) }/ j  ?: e$ x$ q4 r
        }
$ Q8 p3 H' F. M$ {  V( g' R- n- q7 l, D( B, B" E2 D; }
        private void swarmSetp() {
# w; P2 a0 s/ l1 Y# h+ Q- ?2 Q                list.addLast(new Agent(Id));
4 Y  n/ D: U8 E; f9 a. B  F7 I                Id++;  g6 g3 y5 H% o) G
        }" h) R1 D) s3 }* n  f$ y
( `' ~$ g9 L! Q6 ^! V" P* [
        public Activity activateIn(Swarm context) {/ D" r8 Q/ Z. a& ^! i
                super.activateIn(context);
( U& B% F2 Z$ y5 b2 d8 |8 E                schedule.activateIn(this);
- m& w( _4 D' [0 y9 }* u3 B                return getActivity();% Q# }8 p) m9 ?
        }" g7 `" P3 k9 s- `8 W7 [

: ~7 U, u( ]6 x& _1 P  E+ k        public static void main(String[] args) {* M- M3 v% P8 o0 k2 A% Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: ?: Y, P/ o; o9 G1 o6 ?- ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ c  m, c( o1 q) o  Z9 g' H
                swarms.buildObjects();( l, D, {! P  R0 q0 q4 ^" g
                swarms.buildActions();8 b! s; q/ f' z1 }& ~
                swarms.activateIn(null).run();- x0 Q1 O  |. \/ L
        }" ^+ ?/ c  N8 D+ O

3 F2 m4 t* h7 G3 s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-16 00:37 , Processed in 0.016407 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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